diff options
author | Bart Schaefer <schaefer@zsh.org> | 2023-11-15 20:16:04 -0800 |
---|---|---|
committer | Bart Schaefer <schaefer@zsh.org> | 2023-11-15 20:16:04 -0800 |
commit | e6ad117ccb548c8411610571c92fa4094f275460 (patch) | |
tree | 81ea94a83fd4d1dfdc20d19da322ccd767eaf709 /Src/subst.c | |
parent | be223aedee772fc31e12ec8c5277f50aae25b0fe (diff) | |
download | zsh-e6ad117ccb548c8411610571c92fa4094f275460.tar.gz zsh-e6ad117ccb548c8411610571c92fa4094f275460.tar.xz zsh-e6ad117ccb548c8411610571c92fa4094f275460.zip |
52202: improve handling of quoting in ${var/pattern/replacement}
Diffstat (limited to 'Src/subst.c')
-rw-r--r-- | Src/subst.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/Src/subst.c b/Src/subst.c index 60d850feb..4ef1d1269 100644 --- a/Src/subst.c +++ b/Src/subst.c @@ -3088,6 +3088,13 @@ paramsubst(LinkList l, LinkNode n, char **str, int qt, int pf_flags, chuck(ptr); else ptr++; + } else if (c == Dnull) { + chuck(ptr); + while (*ptr && *ptr != c) + ptr++; + if (*ptr == Dnull) + chuck(ptr); + ptr--; /* Outer loop is about to increment */ } } replstr = (*ptr && ptr[1]) ? ptr+1 : ""; |