mirror of
https://git.savannah.gnu.org/git/grub.git
synced 2026-10-21 06:49:35 +00:00
* grub-core/commands/wildcard.c (make_regex): Escape brackets.
This commit is contained in:
1 parent
84fb3b3d73
commit
d8a84076ea
2 files changed
+9
-1
No files matched your search
@@ -1,3 +1,7 @@
|
|||||||
|
2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
|
* grub-core/commands/wildcard.c (make_regex): Escape brackets.
|
||||||
|
|
||||||
2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
|
2010-09-12 Vladimir Serbinenko <phcoder@gmail.com>
|
||||||
|
|
||||||
* grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files.
|
* grub-core/commands/ls.c (grub_cmd_ls): Accept multiple files.
|
||||||
|
|||||||
@@ -137,8 +137,10 @@ make_regex (const char *start, const char *end, regex_t *regexp)
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
case '.':
|
case '.':
|
||||||
|
case '(':
|
||||||
|
case ')':
|
||||||
buffer[i++] = '\\';
|
buffer[i++] = '\\';
|
||||||
buffer[i++] = '.';
|
buffer[i++] = ch;
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case '*':
|
case '*':
|
||||||
@@ -152,6 +154,7 @@ make_regex (const char *start, const char *end, regex_t *regexp)
|
|||||||
}
|
}
|
||||||
buffer[i++] = '$';
|
buffer[i++] = '$';
|
||||||
buffer[i] = '\0';
|
buffer[i] = '\0';
|
||||||
|
grub_dprintf ("expand", "Regexp is %s\n", buffer);
|
||||||
|
|
||||||
if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
|
if (regcomp (regexp, buffer, RE_SYNTAX_GNU_AWK))
|
||||||
{
|
{
|
||||||
@@ -224,6 +227,7 @@ match_devices (const regex_t *regexp, int noparts)
|
|||||||
grub_dprintf ("expand", "matching: %s\n", buffer);
|
grub_dprintf ("expand", "matching: %s\n", buffer);
|
||||||
if (regexec (regexp, buffer, 0, 0, 0))
|
if (regexec (regexp, buffer, 0, 0, 0))
|
||||||
{
|
{
|
||||||
|
grub_dprintf ("expand", "not matched\n");
|
||||||
grub_free (buffer);
|
grub_free (buffer);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in new issue
Block a user