From ecd82629d6115036b1f89410a0964d251527c4ca Mon Sep 17 00:00:00 2001 From: Denys Vlasenko Date: Wed, 19 Feb 2020 17:39:13 +0100 Subject: var: Remove poplocalvars() always-zero argument, make it static Signed-off-by: Denys Vlasenko Signed-off-by: Herbert Xu --- src/var.c | 24 ++++-------------------- src/var.h | 1 - 2 files changed, 4 insertions(+), 21 deletions(-) (limited to 'src') diff --git a/src/var.c b/src/var.c index 0d7e1db..b146018 100644 --- a/src/var.c +++ b/src/var.c @@ -504,8 +504,8 @@ void mklocal(char *name, int flags) * Interrupts must be off. */ -void -poplocalvars(int keep) +static void +poplocalvars(void) { struct localvar_list *ll; struct localvar *lvp, *next; @@ -522,23 +522,7 @@ poplocalvars(int keep) next = lvp->next; vp = lvp->vp; TRACE(("poplocalvar %s\n", vp ? vp->text : "-")); - if (keep) { - int bits = VSTRFIXED; - - if (lvp->flags != VUNSET) { - if (vp->text == lvp->text) - bits |= VTEXTFIXED; - else if (!(lvp->flags & (VTEXTFIXED|VSTACK))) - ckfree(lvp->text); - } - - vp->flags &= ~bits; - vp->flags |= (lvp->flags & bits); - - if ((vp->flags & - (VEXPORT|VREADONLY|VSTRFIXED|VUNSET)) == VUNSET) - unsetvar(vp->text); - } else if (vp == NULL) { /* $- saved */ + if (vp == NULL) { /* $- saved */ memcpy(optlist, lvp->text, sizeof(optlist)); ckfree(lvp->text); optschanged(); @@ -586,7 +570,7 @@ out: void unwindlocalvars(struct localvar_list *stop) { while (localvar_stack != stop) - poplocalvars(0); + poplocalvars(); } diff --git a/src/var.h b/src/var.h index cd0477f..aa7575a 100644 --- a/src/var.h +++ b/src/var.h @@ -148,7 +148,6 @@ int exportcmd(int, char **); int localcmd(int, char **); void mklocal(char *name, int flags); struct localvar_list *pushlocalvars(int push); -void poplocalvars(int); void unwindlocalvars(struct localvar_list *stop); int unsetcmd(int, char **); void unsetvar(const char *); -- cgit 1.4.1