Crash when deallocation when using Ogre and CEGUI
Posted: Sun Dec 03, 2006 18:07
Code: Select all
void CEGUIManager::Startup(Ogre::RenderWindow* window, Ogre::SceneManager* sceneManager)
{
if (disabled)
return;
guiRenderer = new CEGUI::OgreCEGUIRenderer(window);
guiRenderer->setTargetSceneManager(sceneManager);
guiSystem = new CEGUI::System(guiRenderer);
// TODO - don't hardcode these values once I understand all the parameters involved
CEGUI::SchemeManager::getSingleton().loadScheme((CEGUI::utf8*)"TaharezLook.scheme");
guiSystem->setDefaultMouseCursor((CEGUI::utf8*)"TaharezLook", (CEGUI::utf8*)"MouseArrow");
CEGUI::MouseCursor::getSingleton().setImage("TaharezLook", "MouseMoveCursor");
CEGUI::FontManager::getSingleton().createFont("Commonwealth-10.font");
//guiSystem->setDefaultFont((CEGUI::utf8*)"Commonwealth-10.font");
rootWindow=CEGUI::WindowManager::getSingleton().createWindow((CEGUI::utf8*)"DefaultWindow", (CEGUI::utf8*)"Root_Do_Not_Delete");
guiSystem->setGUISheet(rootWindow);
}
void CEGUIManager::Shutdown(void)
{
if (disabled)
return;
if(rootWindow)
{
CEGUI::WindowManager::getSingleton().destroyWindow(rootWindow);
rootWindow=0;
}
if(guiSystem)
{
delete guiSystem;
guiSystem = 0;
}
if(guiRenderer)
{
delete guiRenderer;
guiRenderer = 0;
}
}
On this line it asserts
delete guiSystem;
ogretexturemanager.cpp line 39
Expression ms_Singleton