+2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/commands/wildcard.c (check_file): Fix bad logic.
+ put explicit "/" for empty path.
+ (wildcard_expand): Improve dprintf.
+
2012-06-27 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/fs/fshelp.c (grub_fshelp_find_file): Don't free oldnode if
int match (const char *name, const struct grub_dirhook_info *info)
{
if (basename[0] == 0
- && (info->case_insensitive ? grub_strcasecmp (name, basename) == 0
+ || (info->case_insensitive ? grub_strcasecmp (name, basename) == 0
: grub_strcmp (name, basename) == 0))
{
found = 1;
else
path = dir;
- fs->dir (dev, path, match);
+ fs->dir (dev, path[0] ? path : "/", match);
if (grub_errno == 0 && basename[0] == 0)
found = 1;
*p = 0;
if (!check_file (n, p + 1))
{
- grub_dprintf ("expand", "file <%s> not found\n",
- start);
+ grub_dprintf ("expand", "file <%s> in <%s> not found\n",
+ p + 1, n);
grub_free (o);
grub_free (n);
continue;