hush: fix problems with case in subshells and with "case esac"

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
diff --git a/shell/hush_test/hush-misc/case1.tests b/shell/hush_test/hush-misc/case1.tests
index b2c96cc..d72b57f 100755
--- a/shell/hush_test/hush-misc/case1.tests
+++ b/shell/hush_test/hush-misc/case1.tests
@@ -25,13 +25,16 @@
 case w in `echo OK_52 >&2`) echo SKIP;; `echo`w) echo OK_53;; esac;
 
 # parsing cases in subshells can easily get messy
- case m in  m) echo ok-sub1;; esac
- case m in (m) echo ok-sub2;; esac
-(case m in  m) echo ok-sub3;; esac)
-(case m in (m) echo ok-sub4;; esac)
+ case m in  m) echo OK_sub1;; esac
+ case m in (m) echo OK_sub2;; esac
+(case m in  m) echo OK_sub3;; esac)
+(case m in (m) echo OK_sub4;; esac)
 (
- case m in  m) echo ok-sub5;; esac
+ case m in  m) echo OK_sub5;; esac
 )
 (
- case m in (m) echo ok-sub6;; esac
+ case m in (m) echo OK_sub6;; esac
 )
+(case esac in "esac") echo OK_esac1;; esac)
+
+echo Done