diff --git a/Libraries/LibPthread/pthread.cpp b/Libraries/LibPthread/pthread.cpp index ada649f0a5..56436b1e89 100644 --- a/Libraries/LibPthread/pthread.cpp +++ b/Libraries/LibPthread/pthread.cpp @@ -537,21 +537,15 @@ int pthread_setspecific(pthread_key_t key, const void* value) t_specifics.values[key] = const_cast(value); return 0; } -int pthread_setname_np(pthread_t thread, const char* buffer, int buffer_size) +int pthread_setname_np(pthread_t thread, const char* name) { - if (buffer_size < 0) { - errno = EINVAL; - return -1; - } - return syscall(SC_set_thread_name, thread, buffer, buffer_size); + if (!name) + return EFAULT; + return syscall(SC_set_thread_name, thread, name, strlen(name)); } -int pthread_getname_np(pthread_t thread, char* buffer, int buffer_size) +int pthread_getname_np(pthread_t thread, char* buffer, size_t buffer_size) { - if (buffer_size < 0) { - errno = EINVAL; - return -1; - } return syscall(SC_get_thread_name, thread, buffer, buffer_size); } diff --git a/Libraries/LibPthread/pthread.h b/Libraries/LibPthread/pthread.h index 64fa2a6da6..2f74515dcf 100644 --- a/Libraries/LibPthread/pthread.h +++ b/Libraries/LibPthread/pthread.h @@ -82,7 +82,7 @@ int pthread_mutexattr_init(pthread_mutexattr_t*); int pthread_mutexattr_settype(pthread_mutexattr_t*, int); int pthread_mutexattr_destroy(pthread_mutexattr_t*); -int pthread_setname_np(pthread_t, const char*, int); -int pthread_getname_np(pthread_t, char*, int); +int pthread_setname_np(pthread_t, const char*); +int pthread_getname_np(pthread_t, char*, size_t); __END_DECLS diff --git a/Libraries/LibThread/Thread.cpp b/Libraries/LibThread/Thread.cpp index ac97ce8d1b..b236ffe0ec 100644 --- a/Libraries/LibThread/Thread.cpp +++ b/Libraries/LibThread/Thread.cpp @@ -33,7 +33,7 @@ void LibThread::Thread::start() ASSERT(rc == 0); if (!m_thread_name.is_empty()) { - rc = pthread_setname_np(m_tid, m_thread_name.characters(), m_thread_name.length()); + rc = pthread_setname_np(m_tid, m_thread_name.characters()); ASSERT(rc == 0); } dbg() << "Started a thread, tid = " << m_tid;