| Index: src/v8threads.cc
|
| diff --git a/src/v8threads.cc b/src/v8threads.cc
|
| index c1f20b1971122290d4911f97108e5b70e1f7cf5d..2df187a572c9376311e20039653bad6018b683b7 100644
|
| --- a/src/v8threads.cc
|
| +++ b/src/v8threads.cc
|
| @@ -214,7 +214,7 @@ bool ThreadManager::RestoreThread() {
|
|
|
|
|
| void ThreadManager::Lock() {
|
| - mutex_.Lock();
|
| + mutex_->Lock();
|
| mutex_owner_ = ThreadId::Current();
|
| ASSERT(IsLockedByCurrentThread());
|
| }
|
| @@ -222,7 +222,7 @@ void ThreadManager::Lock() {
|
|
|
| void ThreadManager::Unlock() {
|
| mutex_owner_ = ThreadId::Invalid();
|
| - mutex_.Unlock();
|
| + mutex_->Unlock();
|
| }
|
|
|
|
|
| @@ -303,7 +303,8 @@ ThreadState* ThreadState::Next() {
|
| // be distinguished from not having a thread id at all (since NULL is
|
| // defined as 0.)
|
| ThreadManager::ThreadManager()
|
| - : mutex_owner_(ThreadId::Invalid()),
|
| + : mutex_(OS::CreateMutex()),
|
| + mutex_owner_(ThreadId::Invalid()),
|
| lazily_archived_thread_(ThreadId::Invalid()),
|
| lazily_archived_thread_state_(NULL),
|
| free_anchor_(NULL),
|
| @@ -314,6 +315,7 @@ ThreadManager::ThreadManager()
|
|
|
|
|
| ThreadManager::~ThreadManager() {
|
| + delete mutex_;
|
| DeleteThreadStateList(free_anchor_);
|
| DeleteThreadStateList(in_use_anchor_);
|
| }
|
|
|