hush: reduce indentation, no code changes
authorDenys Vlasenko <vda.linux@googlemail.com>
Wed, 18 Jul 2018 14:12:23 +0000 (16:12 +0200)
committerDenys Vlasenko <vda.linux@googlemail.com>
Wed, 18 Jul 2018 14:12:23 +0000 (16:12 +0200)
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
shell/hush.c

index da10a09a8c5c4d995a51e339057b5c05ba8bbf25..92c79b8b6ca4eef6e46e6e9865407ff821c6d536 100644 (file)
@@ -2423,35 +2423,33 @@ static void set_vars_and_save_old(char **strings)
                char *eq;
 
                eq = strchr(*s, '=');
-               if (eq) {
-                       var_pp = get_ptr_to_local_var(*s, eq - *s);
-                       if (var_pp) {
-                               var_p = *var_pp;
-                               if (var_p->flg_read_only) {
-                                       char **p;
-                                       bb_error_msg("%s: readonly variable", *s);
-                                       /*
-                                        * "VAR=V BLTIN" unsets VARs after BLTIN completes.
-                                        * If VAR is readonly, leaving it in the list
-                                        * after asssignment error (msg above)
-                                        * causes doubled error message later, on unset.
-                                        */
-                                       debug_printf_env("removing/freeing '%s' element\n", *s);
-                                       free(*s);
-                                       p = s;
-                                       do { *p = p[1]; p++; } while (*p);
-                                       goto next;
-                               }
-                               /* below, set_local_var() with nest level will
-                                * "shadow" (remove) this variable from
-                                * global linked list.
-                                */
-                       }
-                       debug_printf_env("%s: env override '%s'/%u\n", __func__, *s, G.var_nest_level);
-                       set_local_var(*s, (G.var_nest_level << SETFLAG_VARLVL_SHIFT) | SETFLAG_EXPORT);
-               } else if (HUSH_DEBUG) {
+               if (HUSH_DEBUG && !eq)
                        bb_error_msg_and_die("BUG in varexp4");
+               var_pp = get_ptr_to_local_var(*s, eq - *s);
+               if (var_pp) {
+                       var_p = *var_pp;
+                       if (var_p->flg_read_only) {
+                               char **p;
+                               bb_error_msg("%s: readonly variable", *s);
+                               /*
+                                * "VAR=V BLTIN" unsets VARs after BLTIN completes.
+                                * If VAR is readonly, leaving it in the list
+                                * after asssignment error (msg above)
+                                * causes doubled error message later, on unset.
+                                */
+                               debug_printf_env("removing/freeing '%s' element\n", *s);
+                               free(*s);
+                               p = s;
+                               do { *p = p[1]; p++; } while (*p);
+                               goto next;
+                       }
+                       /* below, set_local_var() with nest level will
+                        * "shadow" (remove) this variable from
+                        * global linked list.
+                        */
                }
+               debug_printf_env("%s: env override '%s'/%u\n", __func__, *s, G.var_nest_level);
+               set_local_var(*s, (G.var_nest_level << SETFLAG_VARLVL_SHIFT) | SETFLAG_EXPORT);
                s++;
  next: ;
        }