diff --git a/code/uilib/uimenu.cpp b/code/uilib/uimenu.cpp index a1da2b47..64f6cf71 100644 --- a/code/uilib/uimenu.cpp +++ b/code/uilib/uimenu.cpp @@ -639,6 +639,14 @@ void MenuManager::DeleteAllMenus Menu *menu = m_menulist.ObjectAt( i ); delete menu; } + + // + // Added in OPM + // Make sure to clear the menu list and stack + m_menulist.FreeObjectList(); + + m_menustack.Clear(); + m_showmenustack.Clear(); } Menu *MenuManager::FindMenu diff --git a/code/uilib/uiwinman.cpp b/code/uilib/uiwinman.cpp index 90631334..701210f6 100644 --- a/code/uilib/uiwinman.cpp +++ b/code/uilib/uiwinman.cpp @@ -910,6 +910,8 @@ void UIWindowManager::Shutdown(void) delete b; } + m_cursor = NULL; + UIWidget::Shutdown(); }