Ruby 2.5.0 (#2143)
[termux-packages] / packages / ruby / process.c.patch
CommitLineData
e171d66b
CH
1--- /home/vagrant/ruby-2.5.0/process.c 2017-12-14 10:24:38.000000000 +0000
2+++ src/process.c 2018-02-14 18:48:50.591627727 +0000
3@@ -1240,9 +1240,9 @@
59f0d218
FF
4 *argv = (char *)prog;
5 *--argv = (char *)"sh";
6 if (envp)
7- execve("/bin/sh", argv, envp); /* async-signal-safe */
2fd18581 8+ execve("@TERMUX_PREFIX@/bin/sh", argv, envp); /* async-signal-safe */
59f0d218 9 else
98e0a8ee
FF
10- execv("/bin/sh", argv); /* async-signal-safe (since SUSv4) */
11+ execv("@TERMUX_PREFIX@/bin/sh", argv); /* async-signal-safe (since SUSv4) */
59f0d218
FF
12 }
13
14 #else
e171d66b 15@@ -1310,9 +1310,9 @@
59f0d218
FF
16 }
17 #else
18 if (envp_str)
19- execle("/bin/sh", "sh", "-c", str, (char *)NULL, (char **)RSTRING_PTR(envp_str)); /* async-signal-safe */
2fd18581 20+ execle("@TERMUX_PREFIX@/bin/sh", "sh", "-c", str, (char *)NULL, (char **)RSTRING_PTR(envp_str)); /* async-signal-safe */
59f0d218 21 else
98e0a8ee
FF
22- execl("/bin/sh", "sh", "-c", str, (char *)NULL); /* async-signal-safe (since SUSv4) */
23+ execl("@TERMUX_PREFIX@/bin/sh", "sh", "-c", str, (char *)NULL); /* async-signal-safe (since SUSv4) */
59f0d218 24 #endif /* _WIN32 */
e171d66b
CH
25 return errno;
26 }
27@@ -1415,7 +1415,7 @@
59f0d218
FF
28 if (status == -1 && errno == ENOEXEC) {
29 *argv = (char *)prog;
30 *--argv = (char *)"sh";
31- status = spawnv(P_NOWAIT, "/bin/sh", (const char **)argv);
2fd18581 32+ status = spawnv(P_NOWAIT, "@TERMUX_PREFIX@/bin/sh", (const char **)argv);
59f0d218
FF
33 after_exec();
34 if (status == -1) errno = ENOEXEC;
35 }
e171d66b 36@@ -1453,7 +1453,7 @@
59f0d218
FF
37
38 char *shell = dln_find_exe_r("sh", 0, fbuf, sizeof(fbuf));
39 before_exec();
40- status = spawnl(P_NOWAIT, (shell ? shell : "/bin/sh"), "sh", "-c", str, (char*)NULL);
2fd18581 41+ status = spawnl(P_NOWAIT, (shell ? shell : "@TERMUX_PREFIX@/bin/sh"), "sh", "-c", str, (char*)NULL);
59f0d218
FF
42 after_exec();
43 return status;
44 }