Fixed another num_clust related bug: The boundary between FAT12 / FAT16
See MS Knowledge Base Article Q65541
This commit is contained in:
parent
436fb5ce95
commit
eef046d8a5
2 changed files with 3 additions and 2 deletions
|
@ -2,7 +2,8 @@
|
||||||
|
|
||||||
* stage2/fsys_fat.c (fat_mount): Fixed calculation of num_clust.
|
* stage2/fsys_fat.c (fat_mount): Fixed calculation of num_clust.
|
||||||
It was off by two, since the two non existing clusters 0 and 1
|
It was off by two, since the two non existing clusters 0 and 1
|
||||||
were not taken into account.
|
were not taken into account. Also fixed the boundary between
|
||||||
|
FAT12 and FAT16.
|
||||||
|
|
||||||
2000-07-25 OKUJI Yoshinori <okuji@gnu.org>
|
2000-07-25 OKUJI Yoshinori <okuji@gnu.org>
|
||||||
|
|
||||||
|
|
|
@ -124,7 +124,7 @@ fat_mount (void)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
FAT_SUPER->root_cluster = -1;
|
FAT_SUPER->root_cluster = -1;
|
||||||
if (FAT_SUPER->num_clust > FAT_MAX_12BIT_CLUST)
|
if (FAT_SUPER->num_clust >= FAT_MAX_12BIT_CLUST)
|
||||||
FAT_SUPER->fat_size = 4;
|
FAT_SUPER->fat_size = 4;
|
||||||
else
|
else
|
||||||
FAT_SUPER->fat_size = 3;
|
FAT_SUPER->fat_size = 3;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue