diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-03-14 09:36:07 +0100 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2017-03-21 16:14:59 +0100 |
commit | 565b1a57b731c14847e60c6783237a0665cf859f (patch) | |
tree | 418c9f352a1c355aefbaa9b59b4734f641ebabbf /cpukit/libfs/src/dosfs/msdos_dir.c | |
parent | dosfs: Simplify fat_file_open() (diff) | |
download | rtems-565b1a57b731c14847e60c6783237a0665cf859f.tar.bz2 |
dosfs: Add and use msdos_lfn_checksum()
Update #2929.
Diffstat (limited to 'cpukit/libfs/src/dosfs/msdos_dir.c')
-rw-r--r-- | cpukit/libfs/src/dosfs/msdos_dir.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/cpukit/libfs/src/dosfs/msdos_dir.c b/cpukit/libfs/src/dosfs/msdos_dir.c index b10ed9edfc..577dc4d4db 100644 --- a/cpukit/libfs/src/dosfs/msdos_dir.c +++ b/cpukit/libfs/src/dosfs/msdos_dir.c @@ -281,14 +281,8 @@ msdos_dir_read(rtems_libio_t *iop, void *buffer, size_t count) */ if (lfn_start != FAT_FILE_SHORT_NAME) { - uint8_t cs = 0; - uint8_t* p = (uint8_t*) entry; - int i; - - for (i = 0; i < 11; i++, p++) - cs = ((cs & 1) ? 0x80 : 0) + (cs >> 1) + *p; - - if (lfn_entries || (lfn_checksum != cs)) + if (lfn_entries || + lfn_checksum != msdos_lfn_checksum(entry)) lfn_start = FAT_FILE_SHORT_NAME; eno = (*convert_handler->utf16_to_utf8) ( |