[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [40798] trunk/blender/source/blender/ python/intern: fix [#28807] Drivers breaking by undo
Campbell Barton
ideasman42 at gmail.com
Wed Oct 5 09:29:00 CEST 2011
Revision: 40798
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=40798
Author: campbellbarton
Date: 2011-10-05 07:28:59 +0000 (Wed, 05 Oct 2011)
Log Message:
-----------
fix [#28807] Drivers breaking by undo
Modified Paths:
--------------
trunk/blender/source/blender/python/intern/bpy_driver.c
trunk/blender/source/blender/python/intern/bpy_rna.c
Modified: trunk/blender/source/blender/python/intern/bpy_driver.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_driver.c 2011-10-05 05:44:45 UTC (rev 40797)
+++ trunk/blender/source/blender/python/intern/bpy_driver.c 2011-10-05 07:28:59 UTC (rev 40798)
@@ -41,6 +41,9 @@
#include "bpy_driver.h"
+extern void BPY_update_rna_module(void);
+
+
/* for pydrivers (drivers using one-line Python expressions to express relationships between targets) */
PyObject *bpy_pydriver_Dict= NULL;
@@ -164,6 +167,10 @@
if(use_gil)
gilstate= PyGILState_Ensure();
+ /* needed since drivers are updated directly after undo where 'main' is
+ * re-allocated [#28807] */
+ BPY_update_rna_module();
+
/* init global dictionary for py-driver evaluation settings */
if (!bpy_pydriver_Dict) {
if (bpy_pydriver_create_dict() != 0) {
Modified: trunk/blender/source/blender/python/intern/bpy_rna.c
===================================================================
--- trunk/blender/source/blender/python/intern/bpy_rna.c 2011-10-05 05:44:45 UTC (rev 40797)
+++ trunk/blender/source/blender/python/intern/bpy_rna.c 2011-10-05 07:28:59 UTC (rev 40798)
@@ -5906,7 +5906,11 @@
void BPY_update_rna_module(void)
{
+#if 0
RNA_main_pointer_create(G.main, rna_module_ptr);
+#else
+ rna_module_ptr->data= G.main; /* just set data is enough */
+#endif
}
#if 0
More information about the Bf-blender-cvs
mailing list