Index: drivers/filesystems/fs_rec/fs_rec.h =================================================================== --- drivers/filesystems/fs_rec/fs_rec.h (revision 37268) +++ drivers/filesystems/fs_rec/fs_rec.h (working copy) @@ -23,7 +23,7 @@ // // UDFS Offsets // -#define UDFS_VRS_START_SECTOR 16 +#define UDFS_VRS_START_SECTOR 64 #define UDFS_AVDP_SECTOR 256 // Index: drivers/filesystems/fs_rec/udfs.c =================================================================== --- drivers/filesystems/fs_rec/udfs.c (revision 37268) +++ drivers/filesystems/fs_rec/udfs.c (working copy) @@ -24,7 +24,7 @@ LARGE_INTEGER Offset; ULONG State = 0; - Offset.QuadPart = UDFS_VRS_START_SECTOR; + Offset.QuadPart = (UDFS_VRS_START_SECTOR * 512); while (TRUE) { if (!FsRecReadBlock(DeviceObject, @@ -41,7 +41,7 @@ { case 0: - if ((Offset.QuadPart == UDFS_VRS_START_SECTOR) && + if ((Offset.QuadPart == (UDFS_VRS_START_SECTOR * 512)) && (Buffer[1] == 'B') && (Buffer[2] == 'E') && (Buffer[3] == 'A') && @@ -83,8 +83,8 @@ break; } - Offset.QuadPart++; - if (Offset.QuadPart == UDFS_AVDP_SECTOR) + Offset.QuadPart += 512; + if (Offset.QuadPart == (UDFS_AVDP_SECTOR * 512)) { ExFreePool(Buffer); return FALSE;