9
0
Fork 0

Incorporate two FAT bugfixes reported by Sheref Younan.

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@3557 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo 2011-05-03 22:30:53 +00:00
parent b7e1a99025
commit daf21a4931
3 changed files with 8 additions and 3 deletions

View File

@ -1718,3 +1718,6 @@
implementation is incomplete on initial checkin.
* apps/examples/nxffs and configs/sim/nxffs: Add a test a a configuration that
will be used to verify NXFFS.
* fs/fat/fs_fat32.c and fs_fat32util.c: Incorpated two bugs with fixed provided
by Sheref Younan. Thanks!

View File

@ -1179,7 +1179,7 @@ static int fat_sync(FAR struct file *filep)
* in the sector using the saved directory index.
*/
direntry = &fs->fs_buffer[ff->ff_dirindex * 32];
direntry = &fs->fs_buffer[(ff->ff_dirindex & DIRSEC_NDXMASK(fs)) * 32];
/* Set the archive bit, set the write time, and update
* anything that may have* changed in the directory

View File

@ -649,7 +649,8 @@ int fat_mount(struct fat_mountpt_s *fs, bool writeable)
goto errout_with_buffer;
}
if (fat_checkbootrecord(fs) != OK)
ret = fat_checkbootrecord(fs);
if (ret != OK)
{
/* The contents of sector 0 is not a boot record. It could be a
* partition, however. Assume it is a partition and get the offset
@ -683,7 +684,8 @@ int fat_mount(struct fat_mountpt_s *fs, bool writeable)
/* Check if this is a boot record */
if (fat_checkbootrecord(fs) != OK)
ret = fat_checkbootrecord(fs);
if (ret != OK)
{
fdbg("No valid MBR\n");
goto errout_with_buffer;