Преглед на файлове

fix(fat32): read the whole fat table

greatbridf преди 1 година
родител
ревизия
6097ccb5cc
променени са 1 файла, в които са добавени 1 реда и са изтрити 4 реда
  1. 1 4
      src/fs/fat.cpp

+ 1 - 4
src/fs/fat.cpp

@@ -147,11 +147,8 @@ fat32::fat32(inode* _device)
 
     data_region_offset = reserved_sectors + fat_copies * sectors_per_fat;
     fat = (cluster_t*)new char[SECTOR_SIZE * sectors_per_fat];
-    // TODO: optimize
-    for (uint32_t i = 0; i < 4; ++i)
+    for (uint32_t i = 0; i < sectors_per_fat; ++i)
         _raw_read_sector((char*)fat + i * SECTOR_SIZE, reserved_sectors + i);
-    for (uint32_t i = 4; i < sectors_per_fat; ++i)
-        memset((char*)fat + i * SECTOR_SIZE, 0x00, SECTOR_SIZE);
 
     int i = 0;
     while (i < 11 && info->label[i] != 0x20) {