Mercurial > hg > octave-nkf > gnulib-hg
changeset 14215:8e261eb86ba2
get-rusage-as: Fix bug.
* lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Restore the
original limit when aborting the first loop.
author | Bruno Haible <bruno@clisp.org> |
---|---|
date | Sun, 23 Jan 2011 18:58:10 +0100 |
parents | d1d75dad4a65 |
children | 676f66180a36 |
files | ChangeLog lib/get-rusage-as.c |
diffstat | 2 files changed, 11 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2011-01-23 Bruno Haible <bruno@clisp.org> + + get-rusage-as: Fix bug. + * lib/get-rusage-as.c (get_rusage_as_via_setrlimit): Restore the + original limit when aborting the first loop. + 2011-01-23 Bruno Haible <bruno@clisp.org> wctype: Ensure valid C syntax.
--- a/lib/get-rusage-as.c +++ b/lib/get-rusage-as.c @@ -182,7 +182,7 @@ if (getrlimit (RLIMIT_AS, &orig_limit) < 0) { result = 0; - goto done; + goto done2; } if (orig_limit.rlim_max != RLIM_INFINITY @@ -192,7 +192,7 @@ So bail out. */ { result = 0; - goto done; + goto done2; } { @@ -223,7 +223,7 @@ { /* try_next could not be increased. */ result = low_bound; - goto done; + goto done1; } try_limit.rlim_max = orig_limit.rlim_max; @@ -311,11 +311,12 @@ result = low_bound; } + done1: /* Restore the original rlim_cur value. */ if (setrlimit (RLIMIT_AS, &orig_limit) < 0) abort (); - done: + done2: # if !HAVE_MAP_ANONYMOUS close (fd); # endif