diff options
author | Joel Sherrill <joel.sherrill@OARcorp.com> | 2003-03-25 17:01:45 +0000 |
---|---|---|
committer | Joel Sherrill <joel.sherrill@OARcorp.com> | 2003-03-25 17:01:45 +0000 |
commit | c151cfc347d29c7934db74aa4c7aeceaab0de83f (patch) | |
tree | e0d9e3ed17c529fe9aff0bf4463ced288fbb54ab /cpukit/libfs/src/dosfs/fat_file.c | |
parent | 2003-03-25 Till Straumann <strauman@slac.stanford.edu> (diff) | |
download | rtems-c151cfc347d29c7934db74aa4c7aeceaab0de83f.tar.bz2 |
2003-03-25 Thomas Doerfler <Thomas.Doerfler@imd-systems.de>
PR 367/filesystem
* src/dosfs/Makefile.am, src/dosfs/fat.c, src/dosfs/fat.h,
src/dosfs/fat_fat_operations.c, src/dosfs/fat_file.c,
src/dosfs/msdos.h, src/dosfs/msdos_dir.c: Some bugs were still
present in the DOSFS implementation:
- FAT12 did not work properly on Big-Endian machines
- Some synchronization and error handling problems were present
- Some legal codings for EOC were not recognized
Diffstat (limited to 'cpukit/libfs/src/dosfs/fat_file.c')
-rw-r--r-- | cpukit/libfs/src/dosfs/fat_file.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/cpukit/libfs/src/dosfs/fat_file.c b/cpukit/libfs/src/dosfs/fat_file.c index 8046f47720..0d5dcc87ba 100644 --- a/cpukit/libfs/src/dosfs/fat_file.c +++ b/cpukit/libfs/src/dosfs/fat_file.c @@ -770,7 +770,7 @@ fat_file_datasync( return rc; /* for each cluster of the file ... */ - while ((cur_cln & fs_info->vol.mask) != fs_info->vol.eoc_val) + while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) { sec = fat_cluster_num_to_sector_num(mt_entry, cur_cln); /* for each sector in cluster ... */ @@ -830,7 +830,7 @@ fat_file_size( fat_fd->fat_file_size = 0; - while ((cur_cln & fs_info->vol.mask) != fs_info->vol.eoc_val) + while ((cur_cln & fs_info->vol.mask) < fs_info->vol.eoc_val) { save_cln = cur_cln; rc = fat_get_fat_cluster(mt_entry, cur_cln, &cur_cln); |