Displaying 2 results from an estimated 2 matches for "localvar_stack".
2020 Mar 28
0
[klibc:update-dash] dash: eval: Always set localvar_stop
...0644
--- a/usr/dash/var.c
+++ b/usr/dash/var.c
@@ -562,18 +562,24 @@ poplocalvars(int keep)
/*
* Create a new localvar environment.
*/
-struct localvar_list *pushlocalvars(void)
+struct localvar_list *pushlocalvars(int push)
{
struct localvar_list *ll;
+ struct localvar_list *top;
+
+ top = localvar_stack;
+ if (!push)
+ goto out;
INTOFF;
ll = ckmalloc(sizeof(*ll));
ll->lv = NULL;
- ll->next = localvar_stack;
+ ll->next = top;
localvar_stack = ll;
INTON;
- return ll->next;
+out:
+ return top;
}
diff --git a/usr/dash/var.h b/usr/dash/var.h
index 8759be46..e545e02c 1006...
2020 Mar 28
0
[klibc:update-dash] dash: var: Set IFS to fixed value at start time
...ent.org.uk>
---
usr/dash/var.c | 11 ++---------
usr/dash/var.h | 6 +-----
2 files changed, 3 insertions(+), 14 deletions(-)
diff --git a/usr/dash/var.c b/usr/dash/var.c
index cc6f7f2a..604ab1f7 100644
--- a/usr/dash/var.c
+++ b/usr/dash/var.c
@@ -75,11 +75,7 @@ MKINIT struct localvar_list *localvar_stack;
const char defpathvar[] =
"PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin";
-#ifdef IFS_BROKEN
-const char defifsvar[] = "IFS= \t\n";
-#else
-const char defifs[] = " \t\n";
-#endif
+char defifsvar[] = "IFS= \t\n";
MKINIT char defopti...