summaryrefslogtreecommitdiff
path: root/firmware/common
diff options
context:
space:
mode:
authorPeter D'Hoye <peter.dhoye@gmail.com>2008-02-07 22:15:13 +0000
committerPeter D'Hoye <peter.dhoye@gmail.com>2008-02-07 22:15:13 +0000
commitc04f4976703e516d69f03ce3f9045ed73ac4fcdb (patch)
treed7a2d5bf3b1fa3d49784b0a7e26a1535692e39b6 /firmware/common
parent1b39f2e1175330a684fcd73735a50ab2db3e5a41 (diff)
downloadrockbox-c04f4976703e516d69f03ce3f9045ed73ac4fcdb.zip
rockbox-c04f4976703e516d69f03ce3f9045ed73ac4fcdb.tar.gz
rockbox-c04f4976703e516d69f03ce3f9045ed73ac4fcdb.tar.bz2
rockbox-c04f4976703e516d69f03ce3f9045ed73ac4fcdb.tar.xz
Let the FAT namecheck also look for trailing spaces, fixes FS #8560.
Only call the dircache rename function if the actual rename was ok. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@16241 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'firmware/common')
-rw-r--r--firmware/common/file.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/firmware/common/file.c b/firmware/common/file.c
index f0437f9..613eba9 100644
--- a/firmware/common/file.c
+++ b/firmware/common/file.c
@@ -385,9 +385,6 @@ int rename(const char* path, const char* newpath)
return - 5;
file = &openfiles[fd];
-#ifdef HAVE_DIRCACHE
- dircache_rename(path, newpath);
-#endif
rc = fat_rename(&file->fatfile, &dir->fatdir, nameptr,
file->size, file->attr);
@@ -404,6 +401,10 @@ int rename(const char* path, const char* newpath)
return rc * 10 - 7;
}
+#ifdef HAVE_DIRCACHE
+ dircache_rename(path, newpath);
+#endif
+
rc = close(fd);
if (rc<0) {
errno = EIO;