Showing the changes to codec/common/src/WelsThreadPool.cpp (1 of 6 files). Show all
Unified · Split
| @@ -234,7 +234,9 @@ WELS_THREAD_ERROR_CODE CWelsThreadPool::QueueTask (IWelsTask* pTask) { · 233 unmodified lines | ||
| 234 | 234 | } |
| 235 | 235 | } |
| 236 | 236 | //fprintf(stdout, "ThreadPool: AddTaskToWaitedList: %x\n", pTask); |
| 237 | − AddTaskToWaitedList (pTask); | |
| 237 | + if (false == AddTaskToWaitedList (pTask)){ | |
| 238 | + return WELS_THREAD_ERROR_GENERAL; | |
| 239 | + } | |
| 238 | 240 | |
| 239 | 241 | //fprintf(stdout, "ThreadPool: SignalThread: %x\n", pTask); |
| 240 | 242 | SignalThread(); |
| @@ -285,12 +287,12 @@ WELS_THREAD_ERROR_CODE CWelsThreadPool::RemoveThreadFromBusyList (CWelsTaskThrea · 44 unmodified lines | ||
| 285 | 287 | } |
| 286 | 288 | } |
| 287 | 289 | |
| 288 | −void CWelsThreadPool::AddTaskToWaitedList (IWelsTask* pTask) { | |
| 290 | +bool CWelsThreadPool::AddTaskToWaitedList (IWelsTask* pTask) { | |
| 289 | 291 | CWelsAutoLock cLock (m_cLockWaitedTasks); |
| 290 | 292 | |
| 291 | − m_cWaitedTasks->push_back (pTask); | |
| 293 | + int32_t nRet = m_cWaitedTasks->push_back (pTask); | |
| 292 | 294 | //fprintf(stdout, "CWelsThreadPool::AddTaskToWaitedList=%d, pTask=%x\n", m_cWaitedTasks->size(), pTask); |
| 293 | − return; | |
| 295 | + return (0==nRet ? true : false); | |
| 294 | 296 | } |
| 295 | 297 | |
| 296 | 298 | CWelsTaskThread* CWelsThreadPool::GetIdleThread() { |