From 4cde17d1ca7571055b0586fee78bf71765ab32ff Mon Sep 17 00:00:00 2001 From: Björn Stenberg Date: Thu, 14 Nov 2002 15:50:07 +0000 Subject: Flush sector cache before truncating. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2849 a1c6a512-1295-4272-9138-f99709370657 --- firmware/common/file.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'firmware/common') diff --git a/firmware/common/file.c b/firmware/common/file.c index 504273fd67..01a0ebf890 100644 --- a/firmware/common/file.c +++ b/firmware/common/file.c @@ -174,18 +174,18 @@ int close(int fd) return -2; } if (file->write) { - /* truncate? */ - if (file->trunc) { - if (ftruncate(fd, file->fileoffset) < 0) - return -1; - } - /* flush sector cache */ if ( file->dirty ) { if (flush_cache(fd) < 0) return -2; } + /* truncate? */ + if (file->trunc) { + if (ftruncate(fd, file->fileoffset) < 0) + return -1; + } + /* tie up all loose ends */ if (fat_closewrite(&(file->fatfile), file->size) < 0) return -3; -- cgit v1.2.3