[PATCH 1/2] libblkid: Don't keep reading same sector of ISO

Zeeshan Ali (Khattak)
2013-02-11T21:23:55Z

From: "Zeeshan Ali (Khattak)" <zeeshanak@gnome.org>

We were reading the same sector over and over again when parsing ISO9660.
This patches fixes it.
---
libblkid/src/superblocks/iso9660.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/libblkid/src/superblocks/iso9660.c b/libblkid/src/superblocks/iso9660.c
index f7d2b76..33a8597 100644
--- a/libblkid/src/superblocks/iso9660.c
+++ b/libblkid/src/superblocks/iso9660.c
@@ -167,8 +167,10 @@ static int probe_iso9660(blkid_probe pr, const struct blkid_idmag *mag)

if (iso == NULL || iso->vd_type == ISO_VD_END)
break;
- if (iso->vd_type != ISO_VD_SUPPLEMENTARY)
+ if (iso->vd_type != ISO_VD_SUPPLEMENTARY) {
+ off += ISO_SECTOR_SIZE;
continue;
+ }

if (memcmp(iso->escape_sequences, "%/@", 3) == 0 ||
memcmp(iso->escape_sequences, "%/C", 3) == 0 ||
--
1.8.1.2