Chet Ramey <chet.ra...@case.edu> writes: > On 7/5/25 2:57 PM, Carl Johnson wrote: > >> Bash Version: 5.3 >> Patch Level: 0 >> Release Status: release >> Description: >> When alias definition contains the 'unalias' builtin with the alias's >> name as its argument with a newline anywhere after the builtin >> invocation, running the alias when PROMPT_COMMAND is not empty causes >> a segmentation fault. >> Repeat-By: >> Start an bash shell, run the following code: >> ```bash >> PROMPT_COMMAND=: >> alias a=$'unalias a\n' >> a >> ``` >> The result is a segmentation fault. > > Thanks for the report. In the general case, evaluating the value of a shell > variable as a command should save and restore the parser state. In this > edge case, though, it's not necessary because PROMPT_COMMAND is only > evaluated before parsing a command. The attached patch should fix it.
This patch applied to 5.3 seems to break IGNOREEOF="1" for me: ~ $ Use "exit" to leave the shell. ~ $ Use "exit" to leave the shell. ~ $ Use "exit" to leave the shell. [...] thanks, sam