diff options
author | Chet Ramey <chet.ramey@case.edu> | 2022-12-13 12:41:47 -0500 |
---|---|---|
committer | Chet Ramey <chet.ramey@case.edu> | 2022-12-13 12:41:47 -0500 |
commit | 52f2cda1a2156c8532f2f49391470cf2f66a1bd0 (patch) | |
tree | d312916282d29966c676ae3567bbf079f7108a34 | |
parent | c7bb74de78058f6381d54148465d42e8370e075a (diff) | |
download | bash-52f2cda1a2156c8532f2f49391470cf2f66a1bd0.tar.gz |
Bash-5.2 patch 13: fix memory leak referencing a nonexistent associative array element
-rw-r--r-- | patchlevel.h | 2 | ||||
-rw-r--r-- | subst.c | 6 |
2 files changed, 4 insertions, 4 deletions
diff --git a/patchlevel.h b/patchlevel.h index bf3498f6..7ebe846a 100644 --- a/patchlevel.h +++ b/patchlevel.h @@ -25,6 +25,6 @@ regexp `^#define[ ]*PATCHLEVEL', since that's what support/mkversion.sh looks for to find the patch level (for the sccs version string). */ -#define PATCHLEVEL 12 +#define PATCHLEVEL 13 #endif /* _PATCHLEVEL_H_ */ @@ -7497,8 +7497,6 @@ expand_arrayref: ? quote_string (temp) : quote_escapes (temp); rflags |= W_ARRAYIND; - if (estatep) - *estatep = es; /* structure copy */ } /* Note that array[*] and array[@] expanded to a quoted null string by returning the W_HASQUOTEDNULL flag to the caller in addition to TEMP. */ @@ -7507,7 +7505,9 @@ expand_arrayref: else if (es.subtype == 2 && temp && QUOTED_NULL (temp) && (quoted & (Q_DOUBLE_QUOTES|Q_HERE_DOCUMENT))) rflags |= W_HASQUOTEDNULL; - if (estatep == 0) + if (estatep) + *estatep = es; /* structure copy */ + else flush_eltstate (&es); } #endif |