fix failing thread object run

A previously exited Thread object refuses to run again, if the
thread-id of the caller, conincides with the thread-id it previously
used in the worker thread. Hence reset the previously used worker
thread-id to -1 when it exits.

 Signed-off-by: Ritu Srivastava <rsrivast@sta.samsung.com>

Change-Id: I873925c312a43ec8a16392b98cc959042ff6bfd2

Signed-off-by: Madan Ankapura <mankapur@sta.samsung.com>
This commit is contained in:
Ritu Srivastava 2011-01-25 16:23:08 -08:00 committed by Alex Ray
parent a25d2caf15
commit 741cbc3382
1 changed files with 1 additions and 0 deletions

View File

@ -778,6 +778,7 @@ int Thread::_threadLoop(void* user)
// called by a new thread using the same thread ID as this one.
self->mThread = thread_id_t(-1);
self->mThreadExitedCondition.broadcast();
self->mThread = thread_id_t(-1); // thread id could be reused
self->mLock.unlock();
break;
}