| Index: base/threading/thread_local_android.cc
|
| diff --git a/base/threading/thread_local_posix.cc b/base/threading/thread_local_android.cc
|
| similarity index 70%
|
| copy from base/threading/thread_local_posix.cc
|
| copy to base/threading/thread_local_android.cc
|
| index 526a66d062900f30f1b1698fc7a2c603620052b7..63ffd401d76bc471e4107611f8f2fac503548a9b 100644
|
| --- a/base/threading/thread_local_posix.cc
|
| +++ b/base/threading/thread_local_android.cc
|
| @@ -4,8 +4,6 @@
|
|
|
| #include "base/threading/thread_local.h"
|
|
|
| -#include <pthread.h>
|
| -
|
| #include "base/logging.h"
|
|
|
| namespace base {
|
| @@ -13,25 +11,23 @@ namespace internal {
|
|
|
| // static
|
| void ThreadLocalPlatform::AllocateSlot(SlotType* slot) {
|
| - int error = pthread_key_create(slot, NULL);
|
| - CHECK_EQ(error, 0);
|
| + bool succeed = slot->Initialize(NULL);
|
| + CHECK(succeed);
|
| }
|
|
|
| // static
|
| void ThreadLocalPlatform::FreeSlot(SlotType slot) {
|
| - int error = pthread_key_delete(slot);
|
| - DCHECK_EQ(0, error);
|
| + slot.Free();
|
| }
|
|
|
| // static
|
| void* ThreadLocalPlatform::GetValueFromSlot(SlotType slot) {
|
| - return pthread_getspecific(slot);
|
| + return slot.Get();
|
| }
|
|
|
| // static
|
| void ThreadLocalPlatform::SetValueInSlot(SlotType slot, void* value) {
|
| - int error = pthread_setspecific(slot, value);
|
| - DCHECK_EQ(error, 0);
|
| + slot.Set(value);
|
| }
|
|
|
| } // namespace internal
|
|
|