diff options
author | Ron Yorston <rmy@pobox.com> | 2020-05-24 10:27:23 +0100 |
---|---|---|
committer | Ron Yorston <rmy@pobox.com> | 2020-05-24 10:27:23 +0100 |
commit | 04129e0bde3c2d25ab676079e6e3b6fdcdeabe4f (patch) | |
tree | 4eae7fc3f111e4a0c15c6a4371fca751b2630e6f /shell/ash.c | |
parent | 184aa4b5d07d5f3fcc15dd4bb0d4636fba734de3 (diff) | |
download | busybox-w32-04129e0bde3c2d25ab676079e6e3b6fdcdeabe4f.tar.gz busybox-w32-04129e0bde3c2d25ab676079e6e3b6fdcdeabe4f.tar.bz2 busybox-w32-04129e0bde3c2d25ab676079e6e3b6fdcdeabe4f.zip |
win32: changes to '#!' support
Since the earliest days of busybox-w32 '#!' has searched PATH for
the interpreter. This doesn't seem to be supported by precedent.
In testing I also found that additional code was needed for the case
where PATH has been altered in the current shell or is modified on
the command line: PATH has to be extracted from envp rather than
getenv("PATH"). Drop this non-standard feature.
*NIX implementations disagree on whether the interpreter can itself
be a script. Follow Linux and allow this with a limit of four levels
of nesting.
Diffstat (limited to 'shell/ash.c')
-rw-r--r-- | shell/ash.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/shell/ash.c b/shell/ash.c index 4f1fe005b..c6f64e202 100644 --- a/shell/ash.c +++ b/shell/ash.c | |||
@@ -22,8 +22,7 @@ | |||
22 | * - Environment variables from Windows will all be turned to uppercase. | 22 | * - Environment variables from Windows will all be turned to uppercase. |
23 | * - PATH accepts both ; and : as separator, but can't be mixed | 23 | * - PATH accepts both ; and : as separator, but can't be mixed |
24 | * - command without ".exe" extension is still understood as executable | 24 | * - command without ".exe" extension is still understood as executable |
25 | * - shell scripts on the path are detected by the presence of '#!'; | 25 | * - shell scripts on the path are detected by the presence of '#!' |
26 | * the path to the interpreter is ignored, PATH is searched to find it | ||
27 | * - both / and \ are supported in PATH. Usually you must use / | 26 | * - both / and \ are supported in PATH. Usually you must use / |
28 | * - trap/job does not work | 27 | * - trap/job does not work |
29 | * - /dev/null is supported for redirection | 28 | * - /dev/null is supported for redirection |