Use reinterpret_cast instead of static_cast for pthread_t => Thread::id_t
authorMark Slee <mcslee@apache.org>
Tue, 21 Aug 2007 01:54:36 +0000 (01:54 +0000)
committerMark Slee <mcslee@apache.org>
Tue, 21 Aug 2007 01:54:36 +0000 (01:54 +0000)
Summary: On FreeBSD pthread_t is a pthread*, not uint64_t, so static_cast gest upset

Reviewed By: dreiss

Test Plan: Compile on FreeBSD

git-svn-id: https://svn.apache.org/repos/asf/incubator/thrift/trunk@665210 13f79535-47bb-0310-9956-ffa450edef68

lib/cpp/src/concurrency/PosixThreadFactory.cpp

index 73aba61..f6ab6c7 100644 (file)
@@ -135,7 +135,7 @@ class PthreadThread: public Thread {
   }
 
   id_t getId() {
-    return static_cast<id_t>(pthread_);
+    return reinterpret_cast<id_t>(pthread_);
   }
 
   shared_ptr<Runnable> runnable() const { return Thread::runnable(); }
@@ -258,7 +258,7 @@ class PosixThreadFactory::Impl {
 
   void setDetached(bool value) { detached_ = value; }
 
-  Thread::id_t getCurrentThreadId() const {return static_cast<id_t>(pthread_self());}
+  Thread::id_t getCurrentThreadId() const {return reinterpret_cast<id_t>(pthread_self());}
 
 };