[Bf-blender-cvs] [98a7896] master: Fix crashes with timers.
Antony Riakiotakis
noreply at git.blender.org
Thu Sep 18 16:03:36 CEST 2014
Commit: 98a78963be78c1dfd02e1930e2db72deca121d1a
Author: Antony Riakiotakis
Date: Thu Sep 18 15:58:37 2014 +0200
Branches: master
https://developer.blender.org/rB98a78963be78c1dfd02e1930e2db72deca121d1a
Fix crashes with timers.
Incorrectly accessing the menu pointer, set it to NULL before doing the
tests.
We don't restore the menu pointer because it is invalid by the time the operator ends.
===================================================================
M source/blender/windowmanager/intern/wm_operators.c
===================================================================
diff --git a/source/blender/windowmanager/intern/wm_operators.c b/source/blender/windowmanager/intern/wm_operators.c
index bc79879..523eeb3 100644
--- a/source/blender/windowmanager/intern/wm_operators.c
+++ b/source/blender/windowmanager/intern/wm_operators.c
@@ -4354,6 +4354,7 @@ static void redraw_timer_window_swap(bContext *C)
{
wmWindow *win = CTX_wm_window(C);
ScrArea *sa;
+ CTX_wm_menu_set(C, NULL);
for (sa = CTX_wm_screen(C)->areabase.first; sa; sa = sa->next)
ED_area_tag_redraw(sa);
@@ -4392,7 +4393,8 @@ static int redraw_timer_exec(bContext *C, wmOperator *op)
}
else if (type == 1) {
wmWindow *win = CTX_wm_window(C);
-
+ CTX_wm_menu_set(C, NULL);
+
ED_region_tag_redraw(ar);
wm_draw_update(C);
@@ -4405,6 +4407,8 @@ static int redraw_timer_exec(bContext *C, wmOperator *op)
ScrArea *sa_back = CTX_wm_area(C);
ARegion *ar_back = CTX_wm_region(C);
+ CTX_wm_menu_set(C, NULL);
+
for (sa = CTX_wm_screen(C)->areabase.first; sa; sa = sa->next) {
ARegion *ar_iter;
CTX_wm_area_set(C, sa);
More information about the Bf-blender-cvs
mailing list