[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18093] branches/blender2.5/blender/source /blender: run python when starting blender like 2.4x does (was start/ stopping python for each script before)
Campbell Barton
ideasman42 at gmail.com
Sat Dec 27 05:55:50 CET 2008
Revision: 18093
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18093
Author: campbellbarton
Date: 2008-12-27 05:55:45 +0100 (Sat, 27 Dec 2008)
Log Message:
-----------
run python when starting blender like 2.4x does (was start/stopping python for each script before)
This way python can call the operator to run other scripts
eg...
bpyoperator.SCRIPT_OT_run_pyfile(filename = "myop.py")
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/editors/screen/stubs.c
branches/blender2.5/blender/source/blender/python/intern/bpy_interface.c
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_init_exit.c
Modified: branches/blender2.5/blender/source/blender/editors/screen/stubs.c
===================================================================
--- branches/blender2.5/blender/source/blender/editors/screen/stubs.c 2008-12-27 04:30:26 UTC (rev 18092)
+++ branches/blender2.5/blender/source/blender/editors/screen/stubs.c 2008-12-27 04:55:45 UTC (rev 18093)
@@ -41,7 +41,7 @@
/* python, will come back */
void BPY_post_start_python() {}
//void BPY_run_python_script() {}
-void BPY_start_python() {}
+//void BPY_start_python() {}
void BPY_do_all_scripts() {}
void BPY_call_importloader() {}
void BPY_do_pyscript() {}
Modified: branches/blender2.5/blender/source/blender/python/intern/bpy_interface.c
===================================================================
--- branches/blender2.5/blender/source/blender/python/intern/bpy_interface.c 2008-12-27 04:30:26 UTC (rev 18092)
+++ branches/blender2.5/blender/source/blender/python/intern/bpy_interface.c 2008-12-27 04:55:45 UTC (rev 18093)
@@ -39,10 +39,10 @@
return dict;
}
-static void BPY_start_python( void )
+void BPY_start_python( void )
{
PyThreadState *py_tstate = NULL;
-
+
Py_Initialize( );
//PySys_SetArgv( argc_copy, argv_copy );
@@ -57,7 +57,7 @@
}
-static void BPY_end_python( void )
+void BPY_end_python( void )
{
PyGILState_Ensure(); /* finalizing, no need to grab the state */
@@ -76,7 +76,7 @@
/* TODO - look into a better way to run a file */
sprintf(pystring, "exec(open(r'%s').read())", fn);
- BPY_start_python();
+ //BPY_start_python();
gilstate = PyGILState_Ensure();
@@ -91,5 +91,5 @@
PyGILState_Release(gilstate);
- BPY_end_python();
+ //BPY_end_python();
}
Modified: branches/blender2.5/blender/source/blender/windowmanager/intern/wm_init_exit.c
===================================================================
--- branches/blender2.5/blender/source/blender/windowmanager/intern/wm_init_exit.c 2008-12-27 04:30:26 UTC (rev 18092)
+++ branches/blender2.5/blender/source/blender/windowmanager/intern/wm_init_exit.c 2008-12-27 04:55:45 UTC (rev 18093)
@@ -211,7 +211,7 @@
/* before free_blender so py's gc happens while library still exists */
/* needed at least for a rare sigsegv that can happen in pydrivers */
-// BPY_end_python();
+ BPY_end_python();
// fastshade_free_render(); /* shaded view */
free_blender(); /* blender.c, does entire library */
More information about the Bf-blender-cvs
mailing list