Commit 3b8c7ffa authored by bmeurer@chromium.org's avatar bmeurer@chromium.org

Setting the thread name may fail, so don't assert that the result is 0.

R=yangguo@chromium.org

Review URL: https://codereview.chromium.org/20216003

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@15868 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
parent fbc77707
...@@ -502,12 +502,11 @@ Thread::~Thread() { ...@@ -502,12 +502,11 @@ Thread::~Thread() {
static void SetThreadName(const char* name) { static void SetThreadName(const char* name) {
int result = 0;
#if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__OpenBSD__) #if defined(__DragonFly__) || defined(__FreeBSD__) || defined(__OpenBSD__)
result = pthread_set_name_np(pthread_self(), name); pthread_set_name_np(pthread_self(), name);
#elif defined(__NetBSD__) #elif defined(__NetBSD__)
STATIC_ASSERT(Thread::kMaxThreadNameLength <= PTHREAD_MAX_NAMELEN_NP); STATIC_ASSERT(Thread::kMaxThreadNameLength <= PTHREAD_MAX_NAMELEN_NP);
result = pthread_setname_np(pthread_self(), "%s", name); pthread_setname_np(pthread_self(), "%s", name);
#elif defined(__APPLE__) #elif defined(__APPLE__)
// pthread_setname_np is only available in 10.6 or later, so test // pthread_setname_np is only available in 10.6 or later, so test
// for it at runtime. // for it at runtime.
...@@ -520,14 +519,12 @@ static void SetThreadName(const char* name) { ...@@ -520,14 +519,12 @@ static void SetThreadName(const char* name) {
// Mac OS X does not expose the length limit of the name, so hardcode it. // Mac OS X does not expose the length limit of the name, so hardcode it.
static const int kMaxNameLength = 63; static const int kMaxNameLength = 63;
STATIC_ASSERT(Thread::kMaxThreadNameLength <= kMaxNameLength); STATIC_ASSERT(Thread::kMaxThreadNameLength <= kMaxNameLength);
result = dynamic_pthread_setname_np(name); dynamic_pthread_setname_np(name);
#elif defined(PR_SET_NAME) #elif defined(PR_SET_NAME)
result = prctl(PR_SET_NAME, prctl(PR_SET_NAME,
reinterpret_cast<unsigned long>(name), // NOLINT reinterpret_cast<unsigned long>(name), // NOLINT
0, 0, 0); 0, 0, 0);
#endif #endif
ASSERT_EQ(0, result);
USE(result);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment