ash : fix double-quoted "\z" handling

function                                             old     new   delta
readtoken1                                          2602    2608      +6

Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
Denys Vlasenko
2018-02-13 14:43:29 +01:00
parent 3459024bf4
commit 8de5b9f88b
5 changed files with 113 additions and 6 deletions

View File

@@ -0,0 +1,10 @@
ok1
ok2
ok3
ok4
ok5
Ok:0
ok6
ok7
ok8
Ok:0

View File

@@ -0,0 +1,38 @@
# Case argument is globbed, match patterns are not.
# This caught some bugs in the past.
case z in
\z ) echo ok1 ;;
* ) echo BUG ;;
esac
case \z in
z ) echo ok2 ;;
* ) echo BUG ;;
esac
case \z in
\z ) echo ok3 ;;
* ) echo BUG ;;
esac
case z in
\z ) echo ok4 ;;
* ) echo BUG ;;
esac
case \\z in
\\z ) echo ok5 ;;
* ) echo BUG ;;
esac
echo Ok:$?
case "\z" in
"\z" ) echo ok6 ;;
* ) echo BUG ;;
esac
case "\\z" in
"\\z" ) echo ok7 ;;
* ) echo BUG ;;
esac
case "\\\z" in
"\\\z") echo ok8 ;;
* ) echo BUG ;;
esac
echo Ok:$?