diff options
author | Alexis211 <alexis211@gmail.com> | 2009-12-19 14:57:50 +0100 |
---|---|---|
committer | Alexis211 <alexis211@gmail.com> | 2009-12-19 14:57:50 +0100 |
commit | 07f030f2a2147598236c5fd361a7caaba7d00b23 (patch) | |
tree | 4d944e3a6711a80fb8887c2d4c5c6a5c7267819c /Source/Kernel/FileSystems | |
parent | b079ac88df4c2580310e44fda6a2a4ac5f0f840f (diff) | |
download | Melon-07f030f2a2147598236c5fd361a7caaba7d00b23.tar.gz Melon-07f030f2a2147598236c5fd361a7caaba7d00b23.zip |
Minor changes
Diffstat (limited to 'Source/Kernel/FileSystems')
-rw-r--r-- | Source/Kernel/FileSystems/FAT/FATFS.class.cpp | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/Source/Kernel/FileSystems/FAT/FATFS.class.cpp b/Source/Kernel/FileSystems/FAT/FATFS.class.cpp index 4c20b3f..f1d01c5 100644 --- a/Source/Kernel/FileSystems/FAT/FATFS.class.cpp +++ b/Source/Kernel/FileSystems/FAT/FATFS.class.cpp @@ -70,7 +70,7 @@ u32int FATFS::nextCluster(u32int cluster) { u32int fat_sector = m_bs.reserved_sector_count + (fat_offset / m_part->blockSize()); u32int ent_offset = fat_offset % m_part->blockSize(); m_fatCache.readBlocks(fat_sector, 1, fat_table); - u16int tblval = *(u16int*)&fat_table[ent_offset]; + u16int tblval = *((u16int*)(fat_table + ent_offset)); if (cluster & 1) val = tblval >> 4; else val = tblval & 0x0FFF; if (val >= 0xFF7) val = 0; @@ -79,7 +79,7 @@ u32int FATFS::nextCluster(u32int cluster) { u32int fat_sector = m_bs.reserved_sector_count + (fat_offset / m_part->blockSize()); u32int ent_offset = fat_offset % m_part->blockSize(); m_fatCache.readBlocks(fat_sector, 1, fat_table); - u16int tblval = *(u16int*)&fat_table[ent_offset]; + u16int tblval = *(u16int*)(fat_table + ent_offset); val = tblval; if (tblval >= 0xFFF7) val = 0; } else if (m_fatType == 32) { @@ -87,8 +87,10 @@ u32int FATFS::nextCluster(u32int cluster) { u32int fat_sector = m_bs.reserved_sector_count + (fat_offset / m_part->blockSize()); u32int ent_offset = fat_offset % m_part->blockSize(); m_fatCache.readBlocks(fat_sector, 1, fat_table); - val = *(u32int*)&fat_table[ent_offset] & 0x0FFFFFFF; + val = *(u32int*)(fat_table + ent_offset) & 0x0FFFFFFF; if (val >= 0x0FFFFFF7) val = 0; + } else { + val = 0; } return val; } |