Index: src/ch/MainWnd.cpp =================================================================== diff -u -N -rf703b71b8c856e2538283555e9fdbc84918677c3 -r22bbc4a87fa0b249e1e02ba385f28da9d77a4aa1 --- src/ch/MainWnd.cpp (.../MainWnd.cpp) (revision f703b71b8c856e2538283555e9fdbc84918677c3) +++ src/ch/MainWnd.cpp (.../MainWnd.cpp) (revision 22bbc4a87fa0b249e1e02ba385f28da9d77a4aa1) @@ -1,5 +1,5 @@ /*************************************************************************** -* Copyright (C) 2001-2008 by J�zef Starosczyk * +* Copyright (C) 2001-2008 by Jozef Starosczyk * * ixen@copyhandler.com * * * * This program is free software; you can redistribute it and/or modify * @@ -402,22 +402,7 @@ case 8743: { // wait state handling section - CTaskPtr spTask; - if (GetConfig().get_signed_num(PP_CMLIMITMAXOPERATIONS) == 0 || m_tasks.GetOperationsPending() < (UINT)GetConfig().get_signed_num(PP_CMLIMITMAXOPERATIONS)) - { - for(size_t stIndex = 0; stIndex < m_tasks.GetSize(); ++stIndex) - { - spTask = m_tasks.GetAt(stIndex); - // turn on some thread - find something with wait state - if(spTask->GetStatus(ST_WAITING_MASK) & ST_WAITING && (GetConfig().get_signed_num(PP_CMLIMITMAXOPERATIONS) == 0 || m_tasks.GetOperationsPending() < (UINT)GetConfig().get_signed_num(PP_CMLIMITMAXOPERATIONS))) - { - TRACE("Enabling task %ld\n", stIndex); - spTask->SetContinueFlag(true); - spTask->IncreaseOperationsPending(); - spTask->SetStatus(0, ST_WAITING); // turn off wait state - } - } - } + m_tasks.ResumeWaitingTasks((size_t)GetConfig().get_signed_num(PP_CMLIMITMAXOPERATIONS)); break; } }