Wildcard expansion in device name activates my floppy drive (PC BIOS).
I noticed that
echo .
also did so in 1.99, though there should be no expansion. Current
source fixes that case but
echo (.
still runs the floppy. split_path shouldn't treat . as a wildcard.
I believe the regcomp call in make_regex is incorrect because the
constant used is
intended only for a lower-level interface. The defines are more than a
little confusing.
=== modified file 'ChangeLog'
--- old/ChangeLog 2012-06-09 17:58:38 +0000
+++ new/ChangeLog 2012-06-11 06:32:58 +0000
@@ -1,3 +1,8 @@
+2012-06-11 Bob Mabee <[email protected]>
+
+ * commands/wildcard.c (split_path): . is not a wildcard.
+ * (make_regex): RE_SYNTAX_GNU_AWK is not valid for regcomp cflags.
+
2012-06-09 Vladimir Serbinenko <[email protected]>
* tests/grub_script_expansion.in: Explicitly tell grep that we handle
=== modified file 'grub-core/commands/wildcard.c'
--- old/grub-core/commands/wildcard.c 2012-06-08 20:54:21 +0000
+++ new/grub-core/commands/wildcard.c 2012-06-10 23:16:02 +0000
@@ -153,7 +153,7 @@
buffer[i] = '\0';
grub_dprintf ("expand", "Regexp is %s\n", buffer);
- if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
+ if (regcomp (regexp, buffer, REG_EXTENDED))
{
grub_free (buffer);
return 1;
@@ -181,7 +181,7 @@
if (ch == '\\' && end[1])
end++;
- else if (isregexop (ch))
+ else if (ch == '*') /* only wildcard currently implemented */
regex = 1;
else if (ch == '/' && ! regex)
_______________________________________________
Grub-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/grub-devel