diff options
author | Florian Weimer <fweimer@redhat.com> | 2020-05-15 21:24:59 +0200 |
---|---|---|
committer | Florian Weimer <fweimer@redhat.com> | 2020-05-20 20:29:10 +0200 |
commit | cea81e2b7e441663539d196c18bb2568e3e2fae8 (patch) | |
tree | 6da96a605219ff90e7026b36a7c87acaef63492a /nptl/pthread_getattr_default_np.c | |
parent | 331c6e8a184167dd21a9f0b3fc165aeefea6eeca (diff) | |
download | glibc-cea81e2b7e441663539d196c18bb2568e3e2fae8.tar.gz |
nptl: Use __pthread_attr_copy in pthread_getattr_default_np (bug 25999)
pthread_getattr_default_np needs to make a deep copy.
Reviewed-by: Carlos O'Donell <carlos@redhat.com>
Tested-by: Carlos O'Donell <carlos@redhat.com>
Diffstat (limited to 'nptl/pthread_getattr_default_np.c')
-rw-r--r-- | nptl/pthread_getattr_default_np.c | 12 |
1 files changed, 3 insertions, 9 deletions
diff --git a/nptl/pthread_getattr_default_np.c b/nptl/pthread_getattr_default_np.c index cce20cbe94..a9665c5df7 100644 --- a/nptl/pthread_getattr_default_np.c +++ b/nptl/pthread_getattr_default_np.c @@ -16,20 +16,14 @@ License along with the GNU C Library; if not, see <https://www.gnu.org/licenses/>. */ -#include <errno.h> -#include <stdlib.h> #include <pthreadP.h> int pthread_getattr_default_np (pthread_attr_t *out) { - struct pthread_attr *real_out; - - real_out = (struct pthread_attr *) out; - lll_lock (__default_pthread_attr_lock, LLL_PRIVATE); - *real_out = __default_pthread_attr; + int ret = __pthread_attr_copy (out, + (pthread_attr_t *) &__default_pthread_attr); lll_unlock (__default_pthread_attr_lock, LLL_PRIVATE); - - return 0; + return ret; } |