hush: fix problems with case in subshells and with "case esac"
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
@@ -12,3 +12,11 @@ OK_44
|
||||
OK_51
|
||||
OK_52
|
||||
OK_53
|
||||
OK_sub1
|
||||
OK_sub2
|
||||
OK_sub3
|
||||
OK_sub4
|
||||
OK_sub5
|
||||
OK_sub6
|
||||
OK_esac1
|
||||
Done
|
||||
|
@@ -25,13 +25,16 @@ case w in `echo w`) echo OK_51;; `echo WRONG >&2`w) echo WRONG;; esac;
|
||||
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
|
||||
|
Reference in New Issue
Block a user