X-Git-Url: https://git.piment-noir.org/?a=blobdiff_plain;f=src%2Flib%2Fplatform%2Fthreads.cpp;h=8ba391920feb2695326b52ca6e7467f033771dd1;hb=88c05b08388985d752f86ed1451a20e9f4f3e22c;hp=31a0fb31571e4c3d49c6e077bf56d155b18d8748;hpb=13fd6a6619b36bef2df2a126455f83776cc991b4;p=deb_libcec.git diff --git a/src/lib/platform/threads.cpp b/src/lib/platform/threads.cpp index 31a0fb3..8ba3919 100644 --- a/src/lib/platform/threads.cpp +++ b/src/lib/platform/threads.cpp @@ -175,10 +175,17 @@ void *CThread::ThreadHandler(CThread *thread) if (thread) { + CLockObject lock(&thread->m_threadMutex); thread->m_bRunning = true; + lock.Leave(); thread->m_threadCondition.Broadcast(); + retVal = thread->Process(); + + lock.Lock(); thread->m_bRunning = false; + lock.Leave(); + thread->m_threadCondition.Broadcast(); } return retVal;