diff options
author | Campbell Barton <ideasman42@gmail.com> | 2008-03-17 22:58:11 +0300 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2008-03-17 22:58:11 +0300 |
commit | bc7b18131b47c5a3638783e2138e2955e921f829 (patch) | |
tree | 8ec04accdff23940fa9c3254fc65e793cc712220 /source/blender/python/api2_2x/Blender.c | |
parent | 3de98a7cc1e8e2f9cd30d40c9e2273c1c94d62d4 (diff) |
Running scripts with Blender.Run() would crash when reloading.
Diffstat (limited to 'source/blender/python/api2_2x/Blender.c')
-rw-r--r-- | source/blender/python/api2_2x/Blender.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/source/blender/python/api2_2x/Blender.c b/source/blender/python/api2_2x/Blender.c index d520dded486..dbcd21f04f3 100644 --- a/source/blender/python/api2_2x/Blender.c +++ b/source/blender/python/api2_2x/Blender.c @@ -865,8 +865,15 @@ static PyObject *Blender_Run(PyObject *self, PyObject *value) if (script) script->flags |= SCRIPT_RUNNING; /* set */ - if (!is_blender_text) free_libblock(&G.main->text, text); - + if (!is_blender_text) { + + /* nice to remember the original filename, so the script can run on reload */ + if (script) { + strncpy(script->scriptname, fname, sizeof(script->scriptname)); + script->scriptarg[0] = '\0'; + } + free_libblock(&G.main->text, text); + } Py_RETURN_NONE; } |