From c151699ef73ae62338abbc44aec8acc2ceb31998 Mon Sep 17 00:00:00 2001 From: hpa Date: Wed, 22 Dec 2004 07:17:31 +0000 Subject: [PATCH] Fix miscompare of FAT32 --- syslxmod.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/syslxmod.c b/syslxmod.c index 8599625..7107960 100644 --- a/syslxmod.c +++ b/syslxmod.c @@ -201,10 +201,10 @@ const char *syslinux_check_bootsect(const void *bs) if ( get_8(sectbuf+bs16BootSignature) == 0x29 ) { if ( !memcmp(sectbuf+bs16FileSysType, "FAT12 ", 8) ) { - if ( clusters >= 4085 ) + if ( clusters >= 0xFF5 ) return "more than 4084 clusters but claims FAT12"; } else if ( !memcmp(sectbuf+bs16FileSysType, "FAT16 ", 8) ) { - if ( clusters < 4085 ) + if ( clusters < 0xFF5 ) return "less than 4084 clusters but claims FAT16"; } else if ( memcmp(sectbuf+bs16FileSysType, "FAT ", 8) ) { static char fserr[] = "filesystem type \"????????\" not supported"; @@ -216,7 +216,7 @@ const char *syslinux_check_bootsect(const void *bs) /* FAT32 */ /* Moving the FileSysType and BootSignature was a lovely stroke of M$ idiocy */ if ( get_8(sectbuf+bs32BootSignature) != 0x29 || - !memcmp(sectbuf+bs32FileSysType, "FAT32 ", 8) ) + memcmp(sectbuf+bs32FileSysType, "FAT32 ", 8) ) goto invalid; } else { goto invalid; -- 2.7.4