diff options
author | Matt Ebb <matt@mke3.net> | 2010-01-13 05:59:42 +0300 |
---|---|---|
committer | Matt Ebb <matt@mke3.net> | 2010-01-13 05:59:42 +0300 |
commit | 6f0acf3cf3b87c48b854d720ae5b50b5c8092682 (patch) | |
tree | ee793522bae96c6a84d4e4d060cd7e68d6613a84 /source/blender/windowmanager | |
parent | 0edecb73cf2928108c42bf1ae667a1ce7a3f0b96 (diff) |
Fix for Martin's fix, caused file selector to stop working.
Fileselect handlers are added to window's modalhandlers, and contain references to
other areas/regions/etc... Still seems a little bit dodgy, but fixes file selectors for now.
Diffstat (limited to 'source/blender/windowmanager')
-rw-r--r-- | source/blender/windowmanager/intern/wm_event_system.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index f437e096755..11bd6f3e6ef 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -1625,10 +1625,12 @@ void WM_event_remove_area_handler(ListBase *handlers, void *area) wmEventHandler *handler, *nexthandler; for(handler = handlers->first; handler; handler= nexthandler) { - nexthandler = handler->next; - if (handler->ui_area == area || handler->op_area == area) { - BLI_remlink(handlers, handler); - wm_event_free_handler(handler); + if (handler->type != WM_HANDLER_FILESELECT) { + nexthandler = handler->next; + if (handler->ui_area == area || handler->op_area == area) { + BLI_remlink(handlers, handler); + wm_event_free_handler(handler); + } } } } |