summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorbernard <[email protected]>2013-07-29 14:50:12 +0800
committerbernard <[email protected]>2013-07-29 14:50:12 +0800
commitac1073049287779e3dd223cf02bf261f097be2d8 (patch)
tree15f23208c1a2122fa945a085a2d0ccb5bfda09e9
parentac850ef3f0bd46e421d8544152f41515fe36f0b6 (diff)
fix O_APPEND write issue in RAMFS
-rw-r--r--components/dfs/filesystems/ramfs/dfs_ramfs.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/components/dfs/filesystems/ramfs/dfs_ramfs.c b/components/dfs/filesystems/ramfs/dfs_ramfs.c
index a4552fe38c..117528c1e2 100644
--- a/components/dfs/filesystems/ramfs/dfs_ramfs.c
+++ b/components/dfs/filesystems/ramfs/dfs_ramfs.c
@@ -264,7 +264,10 @@ int dfs_ramfs_open(struct dfs_fd *file)
file->data = dirent;
file->size = dirent->size;
- file->pos = 0;
+ if (file->flags & DFS_O_APPEND)
+ file->pos = file->size;
+ else
+ file->pos = 0;
return DFS_STATUS_OK;
}