Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
PATCH: whence - PATH_MAX
- X-seq: zsh-workers 12847
- From: Clint Adams <schizo@xxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxxxxxx
- Subject: PATCH: whence - PATH_MAX
- Date: Tue, 19 Sep 2000 12:19:18 -0400
- In-reply-to: <20000919112345.A21076@xxxxxxxx>; from schizo@xxxxxxxxxx on Tue, Sep 19, 2000 at 11:23:45AM -0400
- Mailing-list: contact zsh-workers-help@xxxxxxxxxxxxxx; run by ezmlm
- References: <20000917235109.A6793@xxxxxxxx> <20000918000915.B6793@xxxxxxxx> <1000918063956.ZM24783@xxxxxxxxxxxxxxxxxxxxxxx> <20000918132142.B11367@xxxxxxxx> <1000919031819.ZM30176@xxxxxxxxxxxxxxxxxxxxxxx> <20000919112345.A21076@xxxxxxxx>
This removes direct dependency on PATH_MAX from Src/builtin.c.
Index: Src/builtin.c
===================================================================
RCS file: /cvsroot/zsh/zsh/Src/builtin.c,v
retrieving revision 1.35
diff -u -r1.35 builtin.c
--- Src/builtin.c 2000/09/18 03:31:32 1.35
+++ Src/builtin.c 2000/09/19 16:15:11
@@ -2390,17 +2390,14 @@
/* Option -a is to search the entire path, *
* rather than just looking for one match. */
if (all) {
- char **pp, buf[PATH_MAX], *z;
+ char **pp, *buf, *z;
+ pushheap();
for (pp = path; *pp; pp++) {
- z = buf;
if (**pp) {
- strucpy(&z, *pp);
- *z++ = '/';
- }
- if ((z - buf) + strlen(*argv) >= PATH_MAX)
- continue;
- strcpy(z, *argv);
+ z = dyncat(*pp, "/");
+ } else z = NULL;
+ buf = dyncat(z, *argv);
if (iscom(buf)) {
if (wd) {
printf("%s: command\n", *argv);
@@ -2420,6 +2417,7 @@
puts(wd ? ": none" : " not found");
returnval = 1;
}
+ popheap();
} else if ((cnam = findcmd(*argv, 1))) {
/* Found external command. */
if (wd) {
Messages sorted by:
Reverse Date,
Date,
Thread,
Author