From ab78cbc71ce16dd39e4b6b9e42c02f75bf1d8a50 Mon Sep 17 00:00:00 2001 From: Petr Machata Date: Thu, 22 Aug 2013 16:46:17 +0200 Subject: [SV 39851] Reinstate stack size limit for processes spawned via $(shell) --- function.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) (limited to 'function.c') diff --git a/function.c b/function.c index 40e1098..4ea2446 100644 --- a/function.c +++ b/function.c @@ -1718,7 +1718,14 @@ func_shell_base (char *o, char **argv, int trim_newlines) if (pid < 0) perror_with_name (error_prefix, "fork"); else if (pid == 0) - child_execute_job (0, pipedes[1], command_argv, envp); + { +#ifdef SET_STACK_SIZE + /* Reset limits, if necessary. */ + if (stack_limit.rlim_cur) + setrlimit (RLIMIT_STACK, &stack_limit); +#endif + child_execute_job (0, pipedes[1], command_argv, envp); + } else # endif #endif -- cgit v1.2.3