summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Keevil <rkeevil+rockbox@gmail.com>2007-07-09 21:23:26 +0000
committerRobert Keevil <rkeevil+rockbox@gmail.com>2007-07-09 21:23:26 +0000
commite68255b978ee95297aa312af78d23281a1328006 (patch)
treecfe3bdb31533ba98b9661af594f73601536f4872
parentcb9ab6e0e13e65f4943039f0042edc2cfd6369de (diff)
downloadrockbox-e68255b978ee95297aa312af78d23281a1328006.zip
rockbox-e68255b978ee95297aa312af78d23281a1328006.tar.gz
rockbox-e68255b978ee95297aa312af78d23281a1328006.tar.bz2
rockbox-e68255b978ee95297aa312af78d23281a1328006.tar.xz
Fix division by 0 error
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@13836 a1c6a512-1295-4272-9138-f99709370657
-rw-r--r--firmware/drivers/fat.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/drivers/fat.c b/firmware/drivers/fat.c
index c9028aa..2ca2b61 100644
--- a/firmware/drivers/fat.c
+++ b/firmware/drivers/fat.c
@@ -325,7 +325,10 @@ int fat_mount(IF_MV2(int volume,) IF_MV2(int drive,) long startsector)
/* Determine FAT type */
datasec = fat_bpb->totalsectors - fat_bpb->firstdatasector;
- fat_bpb->dataclusters = datasec / fat_bpb->bpb_secperclus;
+ if (fat_bpb->bpb_secperclus)
+ fat_bpb->dataclusters = datasec / fat_bpb->bpb_secperclus;
+ else
+ return -2;
#ifdef TEST_FAT
/*