From 2d4743ce50ba0ae50c0cfa1404a163dbd61ad446 Mon Sep 17 00:00:00 2001 From: "Barton E. Schaefer" Date: Wed, 22 Oct 2014 08:42:37 -0700 Subject: 33493: use correct command name in error messages about "ulimit" failure; restore internal copy of limits if setrlimit() fails, so the error won't repeat --- Src/Builtins/rlimits.c | 2 +- Src/exec.c | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) (limited to 'Src') diff --git a/Src/Builtins/rlimits.c b/Src/Builtins/rlimits.c index 9da31831d..85ec1811c 100644 --- a/Src/Builtins/rlimits.c +++ b/Src/Builtins/rlimits.c @@ -518,7 +518,7 @@ do_limit(char *nam, int lim, rlim_t val, int hard, int soft, int set) } } else limits[lim].rlim_cur = val; - if (set && zsetlimit(lim, "limit")) + if (set && zsetlimit(lim, nam)) return 1; } } diff --git a/Src/exec.c b/Src/exec.c index d0fadd69a..2f896d8d5 100644 --- a/Src/exec.c +++ b/Src/exec.c @@ -250,6 +250,7 @@ zsetlimit(int limnum, char *nam) if (setrlimit(limnum, limits + limnum)) { if (nam) zwarnnam(nam, "setrlimit failed: %e", errno); + limits[limnum] = current_limits[limnum]; return -1; } current_limits[limnum] = limits[limnum]; -- cgit 1.4.1