chiark / gitweb /
93ea132e68525d76290c995c7b5fe2e4916c006c
[termux-packages] / packages / ruby / process.c.patch
1 diff -u -r ../ruby-2.3.0/process.c ./process.c
2 --- ../ruby-2.3.0/process.c     2015-12-23 03:57:48.000000000 -0500
3 +++ ./process.c 2015-12-25 15:40:56.370279634 -0500
4 @@ -1227,9 +1227,9 @@
5      *argv = (char *)prog;
6      *--argv = (char *)"sh";
7      if (envp)
8 -        execve("/bin/sh", argv, envp); /* async-signal-safe */
9 +        execve("@TERMUX_PREFIX@/bin/sh", argv, envp); /* async-signal-safe */
10      else
11 -        execv("/bin/sh", argv); /* async-signal-safe (since SUSv4) */
12 +        execv("@TERMUX_PREFIX@/bin/sh", argv); /* async-signal-safe (since SUSv4) */
13  }
14  
15  #else
16 @@ -1301,9 +1301,9 @@
17      }
18  #else
19      if (envp_str)
20 -        execle("/bin/sh", "sh", "-c", str, (char *)NULL, (char **)RSTRING_PTR(envp_str)); /* async-signal-safe */
21 +        execle("@TERMUX_PREFIX@/bin/sh", "sh", "-c", str, (char *)NULL, (char **)RSTRING_PTR(envp_str)); /* async-signal-safe */
22      else
23 -        execl("/bin/sh", "sh", "-c", str, (char *)NULL); /* async-signal-safe (since SUSv4) */
24 +        execl("@TERMUX_PREFIX@/bin/sh", "sh", "-c", str, (char *)NULL); /* async-signal-safe (since SUSv4) */
25  #endif
26      return -1;
27  #endif /* _WIN32 */
28 @@ -1406,7 +1406,7 @@
29      if (status == -1 && errno == ENOEXEC) {
30         *argv = (char *)prog;
31         *--argv = (char *)"sh";
32 -       status = spawnv(P_NOWAIT, "/bin/sh", (const char **)argv);
33 +       status = spawnv(P_NOWAIT, "@TERMUX_PREFIX@/bin/sh", (const char **)argv);
34         after_exec();
35         if (status == -1) errno = ENOEXEC;
36      }
37 @@ -1444,7 +1444,7 @@
38  
39      char *shell = dln_find_exe_r("sh", 0, fbuf, sizeof(fbuf));
40      before_exec();
41 -    status = spawnl(P_NOWAIT, (shell ? shell : "/bin/sh"), "sh", "-c", str, (char*)NULL);
42 +    status = spawnl(P_NOWAIT, (shell ? shell : "@TERMUX_PREFIX@/bin/sh"), "sh", "-c", str, (char*)NULL);
43      after_exec();
44      return status;
45  }