On 10/11/15 2:22 AM, isabella parakiss wrote:
> On 10/11/15, isabella parakiss <izaber...@gmail.com> wrote:
>> In posix mode, bash replaces ! in my PS1 with the history number.
>>
>> $ PS1=' ! '
>>  ! set -o posix
>>  513 exit
>>
>> It doesn't happen with any other prompt escape sequence, afaict.
>> This looks... intentional?  WTF?
>>
> 
> Ok I've now read this page: http://tiswww.case.edu/php/chet/bash/POSIX
> This is awful.
> 
> I found out this by enabling set -o posix in my interactive shell.  bash
> replied with an endless loop of syntax errors because there's this in my
> PS1:  ${var[a != b]}
> Then bash decided to eat up as much cpu and memory it could grab, and I
> had to kill-9 it.
> 
> I understand that changing the standard in unfeasible but a syntax error
> in PS1 shouldn't destroy the shell.

You're right.  I found the code path that didn't honor the "expanding
prompt string, don't jump back to the top level" flag and fixed it.
Thanks.

Chet

-- 
``The lyf so short, the craft so long to lerne.'' - Chaucer
                 ``Ars longa, vita brevis'' - Hippocrates
Chet Ramey, ITS, CWRU    c...@case.edu    http://cnswww.cns.cwru.edu/~chet/

Reply via email to