| Index: runtime/vm/os_thread_macos.cc
|
| diff --git a/runtime/vm/os_thread_macos.cc b/runtime/vm/os_thread_macos.cc
|
| index 4c7d094d9f37ac20d011e28778852c22fac00544..b5fd6f9b8e9948feb8150615f08df3d2129fb57a 100644
|
| --- a/runtime/vm/os_thread_macos.cc
|
| +++ b/runtime/vm/os_thread_macos.cc
|
| @@ -168,8 +168,17 @@ ThreadId OSThread::GetCurrentThreadTraceId() {
|
| }
|
|
|
|
|
| -ThreadJoinId OSThread::GetCurrentThreadJoinId() {
|
| - return pthread_self();
|
| +ThreadJoinId OSThread::GetCurrentThreadJoinId(OSThread* thread) {
|
| + ASSERT(thread != NULL);
|
| + // Make sure we're filling in the join id for the current thread.
|
| + ASSERT(thread->id() == GetCurrentThreadId());
|
| + // Make sure the join_id_ hasn't been set, yet.
|
| + DEBUG_ASSERT(thread->join_id_ == kInvalidThreadJoinId);
|
| + pthread_t id = pthread_self();
|
| +#if defined(DEBUG)
|
| + thread->join_id_ = id;
|
| +#endif
|
| + return id;
|
| }
|
|
|
|
|
|
|