diff options
| author | Björn Stenberg <bjorn@haxx.se> | 2002-11-18 14:55:05 +0000 |
|---|---|---|
| committer | Björn Stenberg <bjorn@haxx.se> | 2002-11-18 14:55:05 +0000 |
| commit | 0a488fb155a9728fa09e72cd65ed7632feecaf3b (patch) | |
| tree | bdc5997b56ce17950a72ba85f47c4c8fbd326c3a /firmware/drivers/fat.c | |
| parent | eee2c01697f90e3be4d7c1b0c57f6921c78e85b9 (diff) | |
| download | rockbox-0a488fb155a9728fa09e72cd65ed7632feecaf3b.zip rockbox-0a488fb155a9728fa09e72cd65ed7632feecaf3b.tar.gz rockbox-0a488fb155a9728fa09e72cd65ed7632feecaf3b.tar.bz2 rockbox-0a488fb155a9728fa09e72cd65ed7632feecaf3b.tar.xz | |
Bug fixes: 1) add_dir_entry() would update end-of-dir marker even when not supposed to. 2) create_dos_name() didn't treat spaces correctly.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2854 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/drivers/fat.c')
| -rw-r--r-- | firmware/drivers/fat.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/firmware/drivers/fat.c b/firmware/drivers/fat.c index a3ed62e..2ff36e2 100644 --- a/firmware/drivers/fat.c +++ b/firmware/drivers/fat.c @@ -841,7 +841,6 @@ static int add_dir_entry(struct fat_dir* dir, entries_found = entries_needed; LDEBUGF("Found last entry %d\n", sector * DIR_ENTRIES_PER_SECTOR + i); - last = true; done = true; break; @@ -873,7 +872,9 @@ static int add_dir_entry(struct fat_dir* dir, /* if we're not extending the dir, we must go back to first free entry */ - if (!last) + if (done) + last = true; + else firstentry -= (entries_needed - 1); } } @@ -951,6 +952,7 @@ unsigned char char2dos(unsigned char c) case 0xe5: /* Special kanji character */ c = 0x05; break; + case 0x20: case 0x22: case 0x2a: case 0x2b: |