diff options
author | Björn Stenberg <bjorn@haxx.se> | 2002-11-12 20:02:23 +0000 |
---|---|---|
committer | Björn Stenberg <bjorn@haxx.se> | 2002-11-12 20:02:23 +0000 |
commit | 099a6b58d1cca1fb052aa453cf1dec524d3ba35a (patch) | |
tree | 23f0446a151c3f8ca47e6c715256a27737532b3b /firmware/drivers/fat.c | |
parent | 5a7548afbaa216385639b224051de5ea28fbeafe (diff) | |
download | rockbox-099a6b58d1cca1fb052aa453cf1dec524d3ba35a.tar.gz rockbox-099a6b58d1cca1fb052aa453cf1dec524d3ba35a.zip |
Added extra safety checks.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2839 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/fat.c')
-rw-r--r-- | firmware/drivers/fat.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/firmware/drivers/fat.c b/firmware/drivers/fat.c index 38223edc6a..37b0648c2e 100644 --- a/firmware/drivers/fat.c +++ b/firmware/drivers/fat.c | |||
@@ -1128,8 +1128,11 @@ static bool transfer( int start, int count, char* buf, bool write ) | |||
1128 | int err; | 1128 | int err; |
1129 | 1129 | ||
1130 | LDEBUGF("transfer(s=%x, c=%x, %s)\n",start, count, write?"write":"read"); | 1130 | LDEBUGF("transfer(s=%x, c=%x, %s)\n",start, count, write?"write":"read"); |
1131 | if (write) | 1131 | if (write) { |
1132 | if (start < fat_bpb.firstdatasector) | ||
1133 | panicf("Writing before data\n"); | ||
1132 | err = ata_write_sectors(start, count, buf); | 1134 | err = ata_write_sectors(start, count, buf); |
1135 | } | ||
1133 | else | 1136 | else |
1134 | err = ata_read_sectors(start, count, buf); | 1137 | err = ata_read_sectors(start, count, buf); |
1135 | if (err) { | 1138 | if (err) { |