008-09-28 Felix Zielcke <fzielcke@z-51.de>
fs/jfs.c (grub_jfs_find_file): Treat multiple slashes like one. Based on code from Tomas Ebenlendr <ebik@ucw.cz>.
This commit is contained in:
parent
92274e85da
commit
eb079ba9e2
2 changed files with 12 additions and 5 deletions
|
@ -1,3 +1,8 @@
|
|||
008-09-28 Felix Zielcke <fzielcke@z-51.de>
|
||||
|
||||
fs/jfs.c (grub_jfs_find_file): Treat multiple slashes like one.
|
||||
Based on code from Tomas Ebenlendr <ebik@ucw.cz>.
|
||||
|
||||
2008-09-28 Bean <bean123ch@gmail.com>
|
||||
|
||||
* fs/ntfs.c (grub_ntfs_iterate_dir): Fix a bug in the previous patch.
|
||||
|
|
12
fs/jfs.c
12
fs/jfs.c
|
@ -614,8 +614,8 @@ grub_jfs_find_file (struct grub_jfs_data *data, const char *path)
|
|||
if (grub_jfs_read_inode (data, GRUB_JFS_AGGR_INODE, &data->currinode))
|
||||
return grub_errno;
|
||||
|
||||
/* Skip the first slash. */
|
||||
if (name[0] == '/')
|
||||
/* Skip the first slashes. */
|
||||
while (*name == '/')
|
||||
{
|
||||
name++;
|
||||
if (!*name)
|
||||
|
@ -626,10 +626,12 @@ grub_jfs_find_file (struct grub_jfs_data *data, const char *path)
|
|||
next = grub_strchr (name, '/');
|
||||
if (next)
|
||||
{
|
||||
next[0] = '\0';
|
||||
next++;
|
||||
while (*next == '/')
|
||||
{
|
||||
next[0] = '\0';
|
||||
next++;
|
||||
}
|
||||
}
|
||||
|
||||
diro = grub_jfs_opendir (data, &data->currinode);
|
||||
if (!diro)
|
||||
return grub_errno;
|
||||
|
|
Loading…
Reference in a new issue