From 63ef5824b1967591a9d3f02108810dc284dfca55 Mon Sep 17 00:00:00 2001 From: Michael McMaster Date: Sat, 29 Apr 2017 14:39:33 +1000 Subject: [PATCH] Fix crash when SD card is smaller than starting sector of scsi disk --- software/SCSI2SD/src/geometry.c | 11 ++++++++++- .../SCSI2SD/v4/SCSI2SD.cydsn/SCSI2SD.cyfit | Bin 274821 -> 274821 bytes 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/software/SCSI2SD/src/geometry.c b/software/SCSI2SD/src/geometry.c index 0666b5a..c3c6bb7 100755 --- a/software/SCSI2SD/src/geometry.c +++ b/software/SCSI2SD/src/geometry.c @@ -28,7 +28,16 @@ uint32_t getScsiCapacity( uint32_t capacity = (sdDev.capacity - sdSectorStart) / SDSectorsPerSCSISector(bytesPerSector); - if (scsiSectors && (capacity > scsiSectors)) + + if (sdDev.capacity == 0) + { + capacity = 0; + } + else if (sdSectorStart >= sdDev.capacity) + { + capacity = 0; + } + else if (scsiSectors && (capacity > scsiSectors)) { capacity = scsiSectors; } diff --git a/software/SCSI2SD/v4/SCSI2SD.cydsn/SCSI2SD.cyfit b/software/SCSI2SD/v4/SCSI2SD.cydsn/SCSI2SD.cyfit index c2567cd77d6a32616c18111926716353d97dd092..4ee1a975b08e06b33a6c5662a768749cfb49ce5d 100644 GIT binary patch delta 390 zcmZpDEYSK`fH%OKnMH(wfq{cz-Ktp|d0&??1L@7b%W}j)jLBJj&%gq~{ihk3w*X}n zC-$;3-v%-^PW#9VW-Oic9>SPD?>9th>Jlhp@~U|pU^OP2-+|RkR^4s_5||vb-4sMO zPubo+WjiAfGi{%;oq3ZyNN~I7b><>QFl*lpW-Auv7eKM!cbF5H!K}Ck%qfgu*3pN| zzD&$-fwH1cn7?{}96Fs>mqicEu+wER1vAQYSscNPUAinbAU{n1smo#sGJd+L9t+qx z({uEIxx-6C;k4rXxaL#3?sS&YCU1^PgfL5f%CvzUPy4`FJA44@|a833h# e?w;Omz+wev95Dde4iaHD1Tuh*p6+DG;tT-AM2`Rf -- 2.38.5