[PATCH] WIP: quote_string_for_globbing: unquoted backslash

2023-09-25 Thread Grisha Levit
I'm not confident in what the right behavior is here, and maybe there is no obvious one, but I _think_ this is not desirable: If an unquoted backslash is followed by a quoted globbing character, quote_string_for_globbing will store the unquoted backslash and then also another one to quote the char

PATCH] unquoted_glob_pattern_p: better recognition

2023-09-25 Thread Grisha Levit
A `/' followed by `(' should not be considered an unquoted glob character: $ bash -O failglob -c ': $1' _ 'a/(b)' _: line 1: no match: a/(b) If extglob is not turned on, it probably doesn't make sense to treat words that don't have any non-extended glob characters as patterns: $ bash -O failglob

[PATCH] glob_char_p: include extglob group chars

2023-09-25 Thread Grisha Levit
This was an oversight when changing quote_string_for_globbing to only quote chars when they need it. --- pathexp.c | 13 - 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/pathexp.c b/pathexp.c index a849ec76..2eed8310 100644 --- a/pathexp.c +++ b/pathexp.c @@ -175,6 +175,

[PATCH] string_transform: keep \001\001 in ${v@E}

2023-09-25 Thread Grisha Levit
$ v=$'\1\1'; printf '%q\n' "${v@E}" $'\001' call ansicstr directly instead of through ansiexpand so we don't end up trimming existing CTLESC CTLESC in the string with dequote_escapes --- subst.c | 6 ++ 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/subst.c b/subst.c index 855f

Re: Malloc assertion fails in ${parameter#word} when LC_CTYPE=C.UTF-8

2023-09-25 Thread Chet Ramey
On 9/22/23 9:31 PM, Samuel Grayson wrote: (Full output [here][1]) Note: I inserted debug statements in my build, so the numbers may be a bit off. This error occurs: - Only when running Bash in Valgrind. I don't know if the Valgrind VM enables   this check which is normally disabled? Valg