Fix if / elif handling bug in HUSH shell
authorwdenk <wdenk>
Mon, 12 Apr 2004 14:31:43 +0000 (14:31 +0000)
committerwdenk <wdenk>
Mon, 12 Apr 2004 14:31:43 +0000 (14:31 +0000)
CHANGELOG
common/hush.c
include/version.h

index 7fe7ee2..3923ca8 100644 (file)
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,4 +1,10 @@
 ======================================================================
+Changes for U-Boot 1.1.1:
+======================================================================
+
+* Fix if / elif handling bug in HUSH shell
+
+======================================================================
 Changes for U-Boot 1.1.0:
 ======================================================================
 
index 4712adc..eeb970c 100644 (file)
@@ -1843,7 +1843,7 @@ static int run_list_real(struct pipe *pi)
                if (rmode == RES_THEN || rmode == RES_ELSE) if_code = next_if_code;
                if (rmode == RES_THEN &&  if_code) continue;
                if (rmode == RES_ELSE && !if_code) continue;
-               if (rmode == RES_ELIF && !if_code) continue;
+               if (rmode == RES_ELIF && !if_code) break;
                if (rmode == RES_FOR && pi->num_progs) {
                        if (!list) {
                                /* if no variable values after "in" we skip "for" */
index e91860f..90eb79d 100644 (file)
@@ -24,6 +24,6 @@
 #ifndef        __VERSION_H__
 #define        __VERSION_H__
 
-#define        U_BOOT_VERSION  "U-Boot 1.1.0"
+#define        U_BOOT_VERSION  "U-Boot 1.1.1"
 
 #endif /* __VERSION_H__ */