Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatt Ebb <matt@mke3.net>2010-01-13 05:59:42 +0300
committerMatt Ebb <matt@mke3.net>2010-01-13 05:59:42 +0300
commit6f0acf3cf3b87c48b854d720ae5b50b5c8092682 (patch)
treeee793522bae96c6a84d4e4d060cd7e68d6613a84 /source/blender/windowmanager
parent0edecb73cf2928108c42bf1ae667a1ce7a3f0b96 (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.c10
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);
+ }
}
}
}