Changeset 39672 in webkit for trunk/JavaScriptCore/wtf/ThreadSpecific.h
- Timestamp:
- Jan 6, 2009, 11:24:18 PM (16 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/JavaScriptCore/wtf/ThreadSpecific.h
r39604 r39672 98 98 { 99 99 Data* data = static_cast<Data*>(ptr); 100 101 // We want get() to keep working while data destructor works, because it can be called indirectly by the destructor. 102 // Some pthreads implementations zero out the pointer before calling destroy(), so we temporarily reset it. 103 pthread_setspecific(data->owner->m_key, ptr); 100 104 data->value->~T(); 101 105 fastFree(data->value); 102 // Only reset the pointer after value destructor finishes - otherwise, code in destructor could trigger103 // re-creation of the object.104 106 pthread_setspecific(data->owner->m_key, 0); 105 107 delete data;
Note:
See TracChangeset
for help on using the changeset viewer.