On 2/7/24 1:43 AM, Grisha Levit wrote:
(Prompted by the report from Emanuele Torre in [1])
The value of currently_executing_command is garbage when there is an error
during assignment when popping the variable context:
$ bash -c 'declare -i SHELLOPTS; f() { local -; set -f; }; f' |& cat -v
bash: line 1: M-`^WM-R^N^\{: braceexpand:hashall:interactive-comment...
$ bash-asan -c 'declare -i SHELLOPTS; f() { local -; set -f; }; f'
SUMMARY: AddressSanitizer: heap-use-after-free execute_cmd.c:399 in
executing_line_number
I fixed the underlying issue: assigning a variable to something you're
going to unwind-protect without unwind-protecting the variable.
I'm not sure that allowing the integer attribute to be changed really makes
sense for readonly variables
No one responded when I asked the question here:
https://lists.gnu.org/archive/html/bug-bash/2024-01/msg00188.html
--
``The lyf so short, the craft so long to lerne.'' - Chaucer
``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, UTech, CWRU c...@case.edu http://tiswww.cwru.edu/~chet/