Skip to content

Commit

Permalink
LibC: Make 'attributes' parameter for pthread_create const
Browse files Browse the repository at this point in the history
  • Loading branch information
gunnarbeutner authored and linusg committed Oct 24, 2022
1 parent ce4b66e commit 1b13d52
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
4 changes: 2 additions & 2 deletions Userland/Libraries/LibC/pthread.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -121,13 +121,13 @@ static int create_thread(pthread_t* thread, void* (*entry)(void*), void* argumen
}

// https://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_create.html
int pthread_create(pthread_t* thread, pthread_attr_t* attributes, void* (*start_routine)(void*), void* argument_to_start_routine)
int pthread_create(pthread_t* thread, pthread_attr_t const* attributes, void* (*start_routine)(void*), void* argument_to_start_routine)
{
if (!thread)
return -EINVAL;

PthreadAttrImpl default_attributes {};
PthreadAttrImpl** arg_attributes = reinterpret_cast<PthreadAttrImpl**>(attributes);
PthreadAttrImpl* const* arg_attributes = reinterpret_cast<PthreadAttrImpl* const*>(attributes);

PthreadAttrImpl* used_attributes = arg_attributes ? *arg_attributes : &default_attributes;

Expand Down
2 changes: 1 addition & 1 deletion Userland/Libraries/LibC/pthread.h
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@

__BEGIN_DECLS

int pthread_create(pthread_t*, pthread_attr_t*, void* (*)(void*), void*);
int pthread_create(pthread_t*, pthread_attr_t const*, void* (*)(void*), void*);
void pthread_exit(void*) __attribute__((noreturn));
int pthread_kill(pthread_t, int);
void pthread_cleanup_push(void (*)(void*), void*);
Expand Down

0 comments on commit 1b13d52

Please sign in to comment.