Displaying 2 results from an estimated 2 matches for "changepath".
Did you mean:
changepass
2020 Mar 28
0
[klibc:update-dash] dash: exec: Stricter pathopt parsing
...be the error */
if (!S_ISREG(statb.st_mode))
continue;
- if (pathopt) { /* this is a %func directory */
+ if (lpathopt) { /* this is a %func directory */
stalloc(len);
readcmdfile(fullname);
if ((cmdp = cmdlookup(name, 0)) == NULL ||
@@ -515,39 +561,26 @@ hashcd(void)
void
changepath(const char *newval)
{
- const char *old, *new;
+ const char *new;
int idx;
- int firstchange;
int bltin;
- old = pathval();
new = newval;
- firstchange = 9999; /* assume no change */
idx = 0;
bltin = -1;
for (;;) {
- if (*old != *new) {
- firstchange = idx;
- if ((*old == '\...
2020 Mar 28
0
[klibc:update-dash] dash: var: Set IFS to fixed value at start time
...VSTRFIXED|VTEXTFIXED, defifsvar, 0 },
-#else
- { 0, VSTRFIXED|VTEXTFIXED|VUNSET, "IFS\0", 0 },
-#endif
{ 0, VSTRFIXED|VTEXTFIXED|VUNSET, "MAIL\0", changemail },
{ 0, VSTRFIXED|VTEXTFIXED|VUNSET, "MAILPATH\0", changemail },
{ 0, VSTRFIXED|VTEXTFIXED, defpathvar, changepath },
@@ -143,6 +135,7 @@ INIT {
}
}
+ setvareq(defifsvar, VTEXTFIXED);
setvareq(defoptindvar, VTEXTFIXED);
fmtstr(ppid + 5, sizeof(ppid) - 5, "%ld", (long) getppid());
diff --git a/usr/dash/var.h b/usr/dash/var.h
index 11ce9b7d..52f559d1 100644
--- a/usr/dash/var.h
+++ b/usr/da...