diff --git a/ChangeLog b/ChangeLog index e530ac339..2717f8a2e 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2013-01-03 Vladimir Serbinenko + + * grub-core/fs/iso9660.c (grub_iso9660_susp_iterate): Avoid hang if + entry->len = 0. + 2013-01-03 Colin Watson * docs/grub.texi (Invoking grub-mkrelpath): New section. diff --git a/grub-core/fs/iso9660.c b/grub-core/fs/iso9660.c index cd4acc8ec..547e15670 100644 --- a/grub-core/fs/iso9660.c +++ b/grub-core/fs/iso9660.c @@ -295,7 +295,7 @@ grub_iso9660_susp_iterate (grub_fshelp_node_t node, grub_off_t off, if (load_sua ()) return grub_errno; - for (; (char *) entry < (char *) sua + sua_size - 1; + for (; (char *) entry < (char *) sua + sua_size - 1 && entry->len > 0; entry = (struct grub_iso9660_susp_entry *) ((char *) entry + entry->len)) {