From c5d685c780c119f676c7bcff9dc53aa057f7a1db Mon Sep 17 00:00:00 2001 From: scrawl Date: Wed, 16 May 2012 14:28:57 +0200 Subject: [PATCH] added an assert --- apps/openmw/mwgui/container.cpp | 6 ++++-- apps/openmw/mwgui/inventorywindow.cpp | 1 + apps/openmw/mwgui/window_manager.cpp | 2 ++ libs/openengine/gui/layout.hpp | 2 +- 4 files changed, 8 insertions(+), 3 deletions(-) diff --git a/apps/openmw/mwgui/container.cpp b/apps/openmw/mwgui/container.cpp index b7e0bf8b5..844d5d89a 100644 --- a/apps/openmw/mwgui/container.cpp +++ b/apps/openmw/mwgui/container.cpp @@ -239,7 +239,9 @@ void ContainerBase::drawItems() for (std::vector::iterator it=unwantedItems.begin(); it != unwantedItems.end(); ++it) { - equippedItems.erase(std::find(unwantedItems.begin(), unwantedItems.end(), *it)); + std::vector::iterator found = std::find(unwantedItems.begin(), unwantedItems.end(), *it); + assert(found != unwantedItems.end()); + equippedItems.erase(found); } // and add the items that are left (= have the correct category) for (std::vector::const_iterator it=equippedItems.begin(); @@ -266,7 +268,7 @@ void ContainerBase::drawItems() if (mDragAndDrop->mIsOnDragAndDrop && *iter == *mDragAndDrop->mDraggedWidget->getUserData()) { displayCount -= mDragAndDrop->mDraggedCount; -} + } if(displayCount > 0 && !(onlyMagic && MWWorld::Class::get(*iter).getEnchantment(*iter) == "" && iter->getTypeName() != typeid(ESM::Potion).name())) { std::string path = std::string("icons\\"); diff --git a/apps/openmw/mwgui/inventorywindow.cpp b/apps/openmw/mwgui/inventorywindow.cpp index b3da52b02..7160fa4f8 100644 --- a/apps/openmw/mwgui/inventorywindow.cpp +++ b/apps/openmw/mwgui/inventorywindow.cpp @@ -209,6 +209,7 @@ namespace MWGui if (invStore.getSlot(*slot) == invStore.end()) { + // slot is not occupied invStore.equip(*slot, it); break; } diff --git a/apps/openmw/mwgui/window_manager.cpp b/apps/openmw/mwgui/window_manager.cpp index a4788ad3b..5c005835c 100644 --- a/apps/openmw/mwgui/window_manager.cpp +++ b/apps/openmw/mwgui/window_manager.cpp @@ -151,6 +151,8 @@ WindowManager::~WindowManager() delete mToolTips; delete mCharGen; delete mDragAndDrop; + delete mBookWindow; + delete mScrollWindow; cleanupGarbage(); } diff --git a/libs/openengine/gui/layout.hpp b/libs/openengine/gui/layout.hpp index abcc01753..d9eefe051 100644 --- a/libs/openengine/gui/layout.hpp +++ b/libs/openengine/gui/layout.hpp @@ -71,7 +71,7 @@ namespace GUI void shutdown() { - MyGUI::LayoutManager::getInstance().unloadLayout(mListWindowRoot); + MyGUI::Gui::getInstance().destroyWidget(mMainWidget); mListWindowRoot.clear(); }