diff --git a/apps/openmw/mwgui/windowmanagerimp.cpp b/apps/openmw/mwgui/windowmanagerimp.cpp index 64bb0c66ca..b2b576522f 100644 --- a/apps/openmw/mwgui/windowmanagerimp.cpp +++ b/apps/openmw/mwgui/windowmanagerimp.cpp @@ -1323,9 +1323,12 @@ namespace MWGui window->exit(); } mKeyboardNavigation->saveFocus(mode); - mGuiModes.pop_back(); - mGuiModeStates[mode].update(false); - MWBase::Environment::get().getLuaManager()->uiModeChanged(MWWorld::Ptr()); + if (containsMode(mode)) + { + mGuiModes.pop_back(); + mGuiModeStates[mode].update(false); + MWBase::Environment::get().getLuaManager()->uiModeChanged(MWWorld::Ptr()); + } } if (!mGuiModes.empty())