aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--shell/hush.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/shell/hush.c b/shell/hush.c
index a68986329..2125e757d 100644
--- a/shell/hush.c
+++ b/shell/hush.c
@@ -9347,11 +9347,14 @@ static int helper_export_local(char **argv,
9347 } 9347 }
9348 } 9348 }
9349# if ENABLE_HUSH_LOCAL 9349# if ENABLE_HUSH_LOCAL
9350 if (exp == 0 && ro == 0 /* local? */ 9350 /* Is this "local" bltin? */
9351 && var && var->func_nest_level == lvl 9351 if (exp == 0
9352 IF_HUSH_READONLY(&& ro == 0) /* in !READONLY config, always true */
9352 ) { 9353 ) {
9353 /* "local x=abc; ...; local x" - ignore second local decl */ 9354 if (var && var->func_nest_level == lvl) {
9354 continue; 9355 /* "local x=abc; ...; local x" - ignore second local decl */
9356 continue;
9357 }
9355 } 9358 }
9356# endif 9359# endif
9357 /* Exporting non-existing variable. 9360 /* Exporting non-existing variable.