Fix #30155: crash with popup menu open while new .blend file is loaded,
CTX_wm_window is then set to NULL and checked in the event queue, but it should be checked for removing handlers too.
This commit is contained in:
@@ -2657,8 +2657,13 @@ void uiPupBlockOperator(bContext *C, uiBlockCreateFunc func, wmOperator *op, int
|
||||
void uiPupBlockClose(bContext *C, uiBlock *block)
|
||||
{
|
||||
if(block->handle) {
|
||||
UI_remove_popup_handlers(&CTX_wm_window(C)->modalhandlers, block->handle);
|
||||
ui_popup_block_free(C, block->handle);
|
||||
wmWindow *win = CTX_wm_window(C);
|
||||
|
||||
/* if loading new .blend while popup is open, window will be NULL */
|
||||
if(win) {
|
||||
UI_remove_popup_handlers(&win->modalhandlers, block->handle);
|
||||
ui_popup_block_free(C, block->handle);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user