about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--Src/Builtins/rlimits.c4
2 files changed, 9 insertions, 1 deletions
diff --git a/ChangeLog b/ChangeLog
index 829c39288..bd6638098 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2002-06-05  Peter Stephenson  <pws@csr.com>
+
+	* 17285: David Wolfe <dwolfe@gforcetech.com>:
+	Src/Builtins/rlimits.c: finally fix 16145 to eliminate duplicate
+	case statement also in ulimit.
+
 2002-06-05  Sven Wischnowsky  <wischnow@zsh.org>
 
 	* 17286: Src/Zle/complist.c: don't use optimised completion
diff --git a/Src/Builtins/rlimits.c b/Src/Builtins/rlimits.c
index 3db47f866..7d20ab07b 100644
--- a/Src/Builtins/rlimits.c
+++ b/Src/Builtins/rlimits.c
@@ -571,7 +571,9 @@ bin_ulimit(char *name, char **argv, char *ops, int func)
 # ifdef RLIMIT_MEMLOCK
 	    case RLIMIT_MEMLOCK:
 # endif /* RLIMIT_MEMLOCK */
-# ifdef RLIMIT_VMEM
+/* If RLIMIT_VMEM and RLIMIT_RSS are defined and equal, avoid *
+ * duplicate case statement.  Observed on QNX Neutrino 6.1.0. */
+# if defined(RLIMIT_VMEM) && (!defined(RLIMIT_RSS) || RLIMIT_RSS != RLIMIT_VMEM)
 	    case RLIMIT_VMEM:
 # endif /* RLIMIT_VMEM */
 # ifdef RLIMIT_AIO_MEM