diff options
| author | Peter Stephenson <pws@zsh.org> | 2016-01-19 17:24:12 +0000 |
|---|---|---|
| committer | Peter Stephenson <pws@zsh.org> | 2016-01-19 17:24:12 +0000 |
| commit | ad16356e1923ec1b4daf97b27b10a835cfe73ba7 (patch) | |
| tree | 714fe0c1d6c89a32ac5194475402fa6dc3f8d218 /Src/glob.c | |
| parent | 37678: Now possible to quote "-" in pattern range (diff) | |
| download | zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.tar zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.tar.gz zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.tar.bz2 zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.tar.lz zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.tar.xz zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.tar.zst zsh-ad16356e1923ec1b4daf97b27b10a835cfe73ba7.zip | |
37689: ! and ^ need to be tokenised in character sets
Diffstat (limited to 'Src/glob.c')
| -rw-r--r-- | Src/glob.c | 19 |
1 files changed, 4 insertions, 15 deletions
diff --git a/Src/glob.c b/Src/glob.c index e5d8956e6..c7992813e 100644 --- a/Src/glob.c +++ b/Src/glob.c @@ -3476,7 +3476,7 @@ static void zshtokenize(char *s, int flags) { char *t; - int bslash = 0, seen_brct = 0; + int bslash = 0; for (; *s; s++) { cont: @@ -3507,20 +3507,6 @@ zshtokenize(char *s, int flags) *t = Inang; *s = Outang; break; - case '[': - if (bslash) - s[-1] = (flags & ZSHTOK_SUBST) ? Bnullkeep : Bnull; - else { - seen_brct = 1; - *s = Inbrack; - } - break; - case '-': - if (bslash) - s[-1] = (flags & ZSHTOK_SUBST) ? Bnullkeep : Bnull; - else if (seen_brct) /* see corresonding code in lex.c */ - *s = Dash; - break; case '(': case '|': case ')': @@ -3531,10 +3517,13 @@ zshtokenize(char *s, int flags) case '^': case '#': case '~': + case '[': case ']': case '*': case '?': case '=': + case '-': + case '!': for (t = ztokens; *t; t++) { if (*t == *s) { if (bslash) |
