From bbf84d6d64f35ffe4e2da97c621ed0132684d08c Mon Sep 17 00:00:00 2001 From: Michael McMaster Date: Sat, 29 Apr 2017 14:40:25 +1000 Subject: [PATCH] Fix crash when SD card is smaller than starting sector of scsi disk --- src/firmware/geometry.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/firmware/geometry.c b/src/firmware/geometry.c index 52e87b9e..44a2e82b 100755 --- a/src/firmware/geometry.c +++ b/src/firmware/geometry.c @@ -30,10 +30,16 @@ uint32_t getScsiCapacity( uint32_t capacity = (sdDev.capacity - sdSectorStart - S2S_CFG_SIZE) / SDSectorsPerSCSISector(bytesPerSector); + + if (sdDev.capacity == 0) { capacity = 0; } + else if (sdSectorStart >= (sdDev.capacity - S2S_CFG_SIZE)) + { + capacity = 0; + } else if (scsiSectors && (capacity > scsiSectors)) { capacity = scsiSectors; -- 2.38.5