Fix crash on exit T3D when build with CMake.

Process::_signalProcess is destroyed first, and then Win32WindowManager::~Win32WindowManager() try to remove from deleted Signal causing a crash.

SlotSignal handle this automatically.
This commit is contained in:
LuisAntonRebollo 2014-04-23 21:16:34 +02:00
parent 0137c86765
commit 881d578aae
3 changed files with 9 additions and 4 deletions

View file

@ -41,7 +41,8 @@ PlatformWindowManager * CreatePlatformWindowManager()
Win32WindowManager::Win32WindowManager()
{
// Register in the process list.
Process::notify(this, &Win32WindowManager::_process, PROCESS_INPUT_ORDER);
mOnProcessSignalSlot.setDelegate( this, &Win32WindowManager::_process );
Process::notify( mOnProcessSignalSlot, PROCESS_INPUT_ORDER );
// Init our list of allocated windows.
mWindowListHead = NULL;
@ -58,9 +59,6 @@ Win32WindowManager::Win32WindowManager()
Win32WindowManager::~Win32WindowManager()
{
// Get ourselves off the process list.
Process::remove(this, &Win32WindowManager::_process);
// Kill all our windows first.
while(mWindowListHead)
// The destructors update the list, so this works just fine.