Revision: 17845
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=17845
Author:   blendix
Date:     2008-12-14 14:38:24 +0100 (Sun, 14 Dec 2008)

Log Message:
-----------

UI: fix for delayed UI callback functions, to avoid it being
called recursively.

Modified Paths:
--------------
    
branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c

Modified: 
branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c
===================================================================
--- 
branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c
   2008-12-14 13:24:22 UTC (rev 17844)
+++ 
branches/blender2.5/blender/source/blender/editors/interface/interface_handlers.c
   2008-12-14 13:38:24 UTC (rev 17845)
@@ -189,8 +189,13 @@
 static void ui_apply_but_funcs_after(bContext *C)
 {
        uiAfterFunc *after;
+       ListBase funcs;
 
-       for(after=UIAfterFuncs.first; after; after=after->next) {
+       /* copy to avoid recursive calls */
+       funcs= UIAfterFuncs;
+       UIAfterFuncs.first= UIAfterFuncs.last= NULL;
+
+       for(after=funcs.first; after; after=after->next) {
                if(after->func)
                        after->func(C, after->func_arg1, after->func_arg2);
                
@@ -200,7 +205,7 @@
                        after->butm_func(C, after->butm_func_arg, after->a2);
        }
 
-       BLI_freelistN(&UIAfterFuncs);
+       BLI_freelistN(&funcs);
 }
 
 static void ui_apply_but_BUT(bContext *C, uiBut *but, uiHandleButtonData *data)


_______________________________________________
Bf-blender-cvs mailing list
Bf-blender-cvs@blender.org
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to