chiark / gitweb /
volume_id: fix fat32 cluster chain traversal
[elogind.git] / extras / volume_id / lib / fat.c
index 92f316a27549dc09632b490097b26cdd32dc3148..9a2e4784d8cee165ca97f5b5a0d65c99e4456d92 100644 (file)
@@ -349,7 +349,7 @@ fat32:
 
                /* set next cluster */
                next = le32_to_cpu(*((uint32_t *) buf)) & 0x0fffffff;
-               if (next == 0)
+               if (next < 2 || next >= 0x0ffffff0)
                        break;
        }
        if (maxloop == 0)