Fix if / elif handling bug in HUSH shell
diff --git a/CHANGELOG b/CHANGELOG
index 7fe7ee2..3923ca8 100644
--- 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:
 ======================================================================
 
diff --git a/common/hush.c b/common/hush.c
index 4712adc..eeb970c 100644
--- a/common/hush.c
+++ b/common/hush.c
@@ -1843,7 +1843,7 @@
 		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" */
diff --git a/include/version.h b/include/version.h
index e91860f..90eb79d 100644
--- a/include/version.h
+++ b/include/version.h
@@ -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__ */