diff options
Diffstat (limited to 'nptl/pthread_getattr_np.c')
-rw-r--r-- | nptl/pthread_getattr_np.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/nptl/pthread_getattr_np.c b/nptl/pthread_getattr_np.c index df11b1ff1d..d0c2c8b880 100644 --- a/nptl/pthread_getattr_np.c +++ b/nptl/pthread_getattr_np.c @@ -135,16 +135,18 @@ pthread_getattr_np (thread_id, attr) if (ret == 0) { - size_t size = 32; + size_t size = 16; cpu_set_t *cpuset = NULL; do { + size <<= 1; + void *newp = realloc (cpuset, size); if (newp == NULL) { - free (cpuset); ret = ENOMEM; + break; } cpuset = (cpu_set_t *) newp; |