92426585d7
Copy from Base:System/bash based on submit request 18772 from user coolo OBS-URL: https://build.opensuse.org/request/show/18772 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/bash?expand=0&rev=43
46 lines
1.1 KiB
Plaintext
46 lines
1.1 KiB
Plaintext
Index: execute_cmd.c
|
|
===================================================================
|
|
--- execute_cmd.c.orig
|
|
+++ execute_cmd.c
|
|
@@ -25,6 +25,7 @@
|
|
#endif /* _AIX && RISC6000 && !__GNUC__ */
|
|
|
|
#include <stdio.h>
|
|
+#include <paths.h>
|
|
#include "chartypes.h"
|
|
#include "bashtypes.h"
|
|
#if !defined (_MINIX) && defined (HAVE_SYS_FILE_H)
|
|
@@ -4764,6 +4765,23 @@ shell_execve (command, args, env)
|
|
/* We have committed to attempting to execute the contents of this file
|
|
as shell commands. */
|
|
|
|
+#if 1
|
|
+ larray = strvec_len(args) + 1;
|
|
+ args = strvec_resize(args, larray + 1);
|
|
+
|
|
+ for (i = larray - 1; i; i--)
|
|
+ args[i] = args[i - 1];
|
|
+
|
|
+ args[0] = savestring(_PATH_BSHELL);
|
|
+ args[1] = command;
|
|
+ args[larray] = (char *)0;
|
|
+
|
|
+ SETOSTYPE (0); /* Some systems use for USG/POSIX semantics */
|
|
+ execve ("/bin/sh", args, env);
|
|
+ SETOSTYPE (1);
|
|
+
|
|
+ internal_error (_("%s: cannot execute: %s"), command, strerror (errno));
|
|
+#else
|
|
initialize_subshell ();
|
|
|
|
set_sigint_handler ();
|
|
@@ -4806,6 +4824,8 @@ shell_execve (command, args, env)
|
|
|
|
longjmp (subshell_top_level, 1);
|
|
/*NOTREACHED*/
|
|
+#endif
|
|
+ return (EX_NOEXEC);
|
|
}
|
|
|
|
static int
|