mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-28 05:00:59 +01:00
34322: bug with interface to parsestr() etc.
Was showing up in places like ${(e)...} where command substitution
could reallocate the token string, but actually there was never any
guarantee that the lexer wouldn't do that, so this was always
a bit iffy.
This commit is contained in:
parent
6856ab39e3
commit
c6c9f5daf2
11 changed files with 59 additions and 26 deletions
|
|
@ -3853,7 +3853,7 @@ makecomplistflags(Compctl cc, char *s, int incmd, int compadd)
|
|||
yaptr = get_user_var(uv);
|
||||
if ((tt = cc->explain)) {
|
||||
tt = dupstring(tt);
|
||||
if ((cc->mask & CC_EXPANDEXPL) && !parsestr(tt)) {
|
||||
if ((cc->mask & CC_EXPANDEXPL) && !parsestr(&tt)) {
|
||||
singsub(&tt);
|
||||
untokenize(tt);
|
||||
}
|
||||
|
|
@ -3873,7 +3873,7 @@ makecomplistflags(Compctl cc, char *s, int incmd, int compadd)
|
|||
}
|
||||
} else if ((tt = cc->explain)) {
|
||||
tt = dupstring(tt);
|
||||
if ((cc->mask & CC_EXPANDEXPL) && !parsestr(tt)) {
|
||||
if ((cc->mask & CC_EXPANDEXPL) && !parsestr(&tt)) {
|
||||
singsub(&tt);
|
||||
untokenize(tt);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue