diff --git a/uppsrc/CtrlCore/CtrlTimer.cpp b/uppsrc/CtrlCore/CtrlTimer.cpp index 3fa99a69a..517645a2a 100644 --- a/uppsrc/CtrlCore/CtrlTimer.cpp +++ b/uppsrc/CtrlCore/CtrlTimer.cpp @@ -88,12 +88,12 @@ void Ctrl::TimerProc(dword time) while(list->GetNext() != list && ((int)(time - list->GetNext()->time)) > 0) { TimeEvent *e = list->GetNext(); e->Unlink(); - if(e->delay < 0) - sTimeCallback(time - e->delay, e->delay, e->cb, e->id); eventid++; sTimerLock.Leave(); e->cb(); sTimerLock.Enter(); + if(e->delay < 0) + sTimeCallback(time - e->delay, e->delay, e->cb, e->id); delete e; } sTimerLock.Leave();