diff options
Diffstat (limited to 'proc/info.c')
-rw-r--r-- | proc/info.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/proc/info.c b/proc/info.c index 01f01036..580ce8fb 100644 --- a/proc/info.c +++ b/proc/info.c @@ -409,7 +409,12 @@ S_proc_getprocinfo (struct proc *callerp, { *piarray = mmap (0, structsize, PROT_READ|PROT_WRITE, MAP_ANON, 0, 0); if (*piarray == MAP_FAILED) - return errno; + { + err = errno; + if (*flags & PI_FETCH_THREADS) + munmap (thds, nthreads * sizeof (thread_t)); + return err; + } pi_alloced = 1; } *piarraylen = structsize / sizeof (int); |