diff options
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | Src/Builtins/rlimits.c | 14 |
2 files changed, 12 insertions, 7 deletions
diff --git a/ChangeLog b/ChangeLog index dfb0d4c33..6bc01c14f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2001-10-25 Peter Stephenson <pws@csr.com> + + * 16145: Src/Builtins/rlimits.c: try to handle both RLIMITS_VMEM + and RLIMITS_RSS, even if they are the same value (c.f. 16033). + 2001-10-24 Peter Stephenson <pws@csr.com> * 16130: Doc/.cvsignore, Doc/Zsh/manual.yo: Fix for texi2html diff --git a/Src/Builtins/rlimits.c b/Src/Builtins/rlimits.c index 2b03beb37..0df671786 100644 --- a/Src/Builtins/rlimits.c +++ b/Src/Builtins/rlimits.c @@ -44,12 +44,6 @@ enum { # include "rlimits.h" -/* If RLIMIT_VMEM and RLIMIT_RSS are defined and equal, drop support * - * for RLIMIT_RSS. Observed on QNX Neutrino 6.1.0. */ -#if defined(RLIMIT_RSS) && defined(RLIMIT_VMEM) && (RLIMIT_RSS == RLIMIT_VMEM) -#undef RLIMIT_RSS -#endif - # if defined(RLIM_T_IS_QUAD_T) || defined(RLIM_T_IS_LONG_LONG) || defined(RLIM_T_IS_UNSIGNED) static rlim_t zstrtorlimt(const char *s, char **t, int base) @@ -174,7 +168,9 @@ printulimit(int lim, int hard, int head) if (limit != RLIM_INFINITY) limit /= 512; break; -# ifdef RLIMIT_RSS +/* If RLIMIT_VMEM and RLIMIT_RSS are defined and equal, avoid * + * duplicate case statement. Observed on QNX Neutrino 6.1.0. */ +# if defined(RLIMIT_RSS) && (!defined(RLIMIT_VMEM) || RLIMIT_VMEM != RLIMIT_RSS) case RLIMIT_RSS: if (head) printf("resident set size (kbytes) "); @@ -205,7 +201,11 @@ printulimit(int lim, int hard, int head) # ifdef RLIMIT_VMEM case RLIMIT_VMEM: if (head) +# if defined(RLIMIT_RSS) && RLIMIT_VMEM == RLIMIT_RSS + printf("memory size (kb) "); +# else printf("virtual memory size (kb) "); +# endif if (limit != RLIM_INFINITY) limit /= 1024; break; |