[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [33140] trunk/blender/source/blender/ makesrna/intern/rna_scene_api.c: bugfix [#24690] Scene.frame_set() breaks pose restore

Campbell Barton ideasman42 at gmail.com
Wed Nov 17 18:38:56 CET 2010


Revision: 33140
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=33140
Author:   campbellbarton
Date:     2010-11-17 18:38:56 +0100 (Wed, 17 Nov 2010)

Log Message:
-----------
bugfix [#24690] Scene.frame_set() breaks pose restore
scene.frame_set() was sending out a frame change notifier which would update the scene loosing any un-keyed changes after a script ran.
for now use a window redraw notifier.

Modified Paths:
--------------
    trunk/blender/source/blender/makesrna/intern/rna_scene_api.c

Modified: trunk/blender/source/blender/makesrna/intern/rna_scene_api.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_scene_api.c	2010-11-17 16:33:56 UTC (rev 33139)
+++ trunk/blender/source/blender/makesrna/intern/rna_scene_api.c	2010-11-17 17:38:56 UTC (rev 33140)
@@ -55,7 +55,12 @@
 	CLAMP(scene->r.cfra, MINAFRAME, MAXFRAME);
 	scene_update_for_newframe(G.main, scene, (1<<20) - 1);
 
-	WM_main_add_notifier(NC_SCENE|ND_FRAME, scene);
+	/* cant use NC_SCENE|ND_FRAME because this casues wm_event_do_notifiers to call 
+	 * scene_update_for_newframe which will loose any un-keyed changes [#24690] */
+	/* WM_main_add_notifier(NC_SCENE|ND_FRAME, scene); */
+	
+	/* instead just redraw the views */
+	WM_main_add_notifier(NC_WINDOW, NULL);
 }
 
 static void rna_Scene_update_tagged(Scene *scene)





More information about the Bf-blender-cvs mailing list