X-Git-Url: https://git.stderr.nl/gitweb?a=blobdiff_plain;f=ABM2%2FEngine%2FKernel.cpp;h=581b96370d7575914071f944d35376e0ae2f34ec;hb=75d4212e8548f64904bad6d7f8978c077e6687d0;hp=06269d33183bbd209f78b2b1967a317ab654f98b;hpb=74b9a225eda4a9c8d97da9f374fd444b3823e5c1;p=matthijs%2FABM2.git diff --git a/ABM2/Engine/Kernel.cpp b/ABM2/Engine/Kernel.cpp index 06269d3..581b963 100755 --- a/ABM2/Engine/Kernel.cpp +++ b/ABM2/Engine/Kernel.cpp @@ -25,9 +25,6 @@ CKernel::~CKernel() int CKernel::Execute() { -#ifdef WIN32 - MSG msg; -#endif // WIN32 while(taskList.size()) { @@ -36,15 +33,6 @@ int CKernel::Execute() DWORD starting_point = GetTickCount(); -#ifdef WIN32 - if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) - { - TranslateMessage(&msg); - DispatchMessage(&msg); - } -#endif // WIN32 - - std::list< CMMPointer >::iterator it, thisIt; for(it=taskList.begin();it!=taskList.end();) { @@ -67,7 +55,9 @@ int CKernel::Execute() } IMMObject::CollectGarbage(); DWORD end_point = GetTickCount(); - Sleep(50 - (end_point-starting_point)); + /* Sleep if we didn't use up too much time already */ + if (starting_point + 250 > end_point) + Sleep(250 - (end_point-starting_point)); } #ifdef _DEBUG CProfileSample::Output();