Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2008-03-17 22:58:11 +0300
committerCampbell Barton <ideasman42@gmail.com>2008-03-17 22:58:11 +0300
commitbc7b18131b47c5a3638783e2138e2955e921f829 (patch)
tree8ec04accdff23940fa9c3254fc65e793cc712220 /source/blender/python/api2_2x/Blender.c
parent3de98a7cc1e8e2f9cd30d40c9e2273c1c94d62d4 (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.c11
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;
}