Le 18 sept. 2015 8:09 PM, "Andrei Borzenkov" <arvidj...@gmail.com> a écrit : > > It cannot work anyway because host disk cannot be read. This fixes hostfs access > on native Windows build where filenames start with '\' or do not have initial > separator at all (d:\foo). > > Issue was observed when running grub-fstest on Windows. On UNIX image name is > canonicalized to always start with `/' so this was not noticed. > > This has side effect of allowing relative path names on host, but this already > was the case with `ls' command, so it just extends it to all commands. > > Reported-By: Arch Stack <archstac...@gmail.com> > Also-By: Arch Stack <archstac...@gmail.com> > > --- > grub-core/kern/file.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/grub-core/kern/file.c b/grub-core/kern/file.c > index 24da12b..3367485 100644 > --- a/grub-core/kern/file.c > +++ b/grub-core/kern/file.c > @@ -89,7 +89,11 @@ grub_file_open (const char *name) > > file->device = device; > > - if (device->disk && file_name[0] != '/') > + if (device->disk && file_name[0] != '/' > +#if defined(GRUB_UTIL) || defined(GRUB_MACHINE_EMU) > + && grub_strcmp (device->disk->name, "host") > +#endif I don't particularly like this code but have no better idea. So go ahead, just add a comment why it's needed > + ) > /* This is a block list. */ > file->fs = &grub_fs_blocklist; > else > -- > tg: (c93d3e6..) u/hostfs-windows (depends on: master) > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > https://lists.gnu.org/mailman/listinfo/grub-devel
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel