[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