diff --git a/source/blender/windowmanager/intern/wm_event_system.c b/source/blender/windowmanager/intern/wm_event_system.c index cc98f7a08a6..906b320dc15 100644 --- a/source/blender/windowmanager/intern/wm_event_system.c +++ b/source/blender/windowmanager/intern/wm_event_system.c @@ -2462,21 +2462,23 @@ static int wm_handler_fileselect_do(bContext *C, * it was likely opened by #EVT_FILESELECT_FULL_OPEN. */ continue; } int win_size[2]; bool is_maximized; ED_fileselect_window_params_get(win, win_size, &is_maximized); ED_fileselect_params_to_userdef(file_area->spacedata.first, win_size, is_maximized); if (BLI_listbase_is_single(&file_area->spacedata)) { - BLI_assert(ctx_win != win); + if (ctx_win == win) { + continue; + } wm_window_close(C, wm, win); CTX_wm_window_set(C, ctx_win); /* #wm_window_close() NULLs. */ /* Some operators expect a drawable context (for #EVT_FILESELECT_EXEC). */ wm_window_make_drawable(wm, ctx_win); /* Ensure correct cursor position, otherwise, popups may close immediately after * opening (#UI_BLOCK_MOVEMOUSE_QUIT). */ wm_cursor_position_get( ctx_win, &ctx_win->eventstate->xy[0], &ctx_win->eventstate->xy[1]);