summaryrefslogtreecommitdiff
path: root/Src/text.c
diff options
context:
space:
mode:
authorPeter Stephenson <pws@users.sourceforge.net>2007-01-19 21:36:00 +0000
committerPeter Stephenson <pws@users.sourceforge.net>2007-01-19 21:36:00 +0000
commitde272e0309bc1739f13cc8271a2f94bcde7ba23c (patch)
treed094cb847e41520af34ef250e4c82eea66f52016 /Src/text.c
parenta5729be83502b3d2ba93e38a485393c9af13a935 (diff)
downloadzsh-de272e0309bc1739f13cc8271a2f94bcde7ba23c.tar.gz
zsh-de272e0309bc1739f13cc8271a2f94bcde7ba23c.zip
23115: ";|" at end of case clause causes later patterns to be tested
Diffstat (limited to 'Src/text.c')
-rw-r--r--Src/text.c28
1 files changed, 26 insertions, 2 deletions
diff --git a/Src/text.c b/Src/text.c
index 0079e9fea..181fea083 100644
--- a/Src/text.c
+++ b/Src/text.c
@@ -537,7 +537,19 @@ gettext2(Estate state)
}
} else if (state->pc < s->u._case.end) {
tindent--;
- taddstr(WC_CASE_TYPE(code) == WC_CASE_OR ? " ;;" : ";&");
+ switch (WC_CASE_TYPE(code)) {
+ case WC_CASE_OR:
+ taddstr(" ;;");
+ break;
+
+ case WC_CASE_AND:
+ taddstr(";&");
+ break;
+
+ default:
+ taddstr(";|");
+ break;
+ }
if (tnewlins)
taddnl();
else
@@ -553,7 +565,19 @@ gettext2(Estate state)
s->u._case.end);
} else {
tindent--;
- taddstr(WC_CASE_TYPE(code) == WC_CASE_OR ? " ;;" : ";&");
+ switch (WC_CASE_TYPE(code)) {
+ case WC_CASE_OR:
+ taddstr(" ;;");
+ break;
+
+ case WC_CASE_AND:
+ taddstr(";&");
+ break;
+
+ default:
+ taddstr(";|");
+ break;
+ }
tindent--;
if (tnewlins)
taddnl();