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
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
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,
$ 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
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