From ab968fd6eb091d45b73085de6a1b15d62b890b48 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Wed, 17 Nov 2010 17:38:56 +0000 Subject: 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. --- source/blender/makesrna/intern/rna_scene_api.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'source') diff --git a/source/blender/makesrna/intern/rna_scene_api.c b/source/blender/makesrna/intern/rna_scene_api.c index f06f55a4e37..f14b57e2b33 100644 --- a/source/blender/makesrna/intern/rna_scene_api.c +++ b/source/blender/makesrna/intern/rna_scene_api.c @@ -55,7 +55,12 @@ static void rna_Scene_frame_set(Scene *scene, int frame, float subframe) 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) -- cgit v1.2.3