diff options
author | resver@gmail.com <resver@gmail.com@60bc1c72-a15a-11de-b98f-4500b42dc123> | 2013-08-06 20:08:06 +0000 |
---|---|---|
committer | resver@gmail.com <resver@gmail.com@60bc1c72-a15a-11de-b98f-4500b42dc123> | 2013-08-06 20:08:06 +0000 |
commit | 54ddb9685949eb000b8ac9bc60700e3ad8ba1ee6 (patch) | |
tree | f7d543d8cfa97572aa39803f162dfe97ee7cbc55 /fuse/main.c | |
parent | 507fac976451eb0cf8531b64401fbb16fc2b4177 (diff) | |
download | android_external_exfat-54ddb9685949eb000b8ac9bc60700e3ad8ba1ee6.tar.gz android_external_exfat-54ddb9685949eb000b8ac9bc60700e3ad8ba1ee6.tar.bz2 android_external_exfat-54ddb9685949eb000b8ac9bc60700e3ad8ba1ee6.zip |
Handle I/O errors in exfat_flush_node().
git-svn-id: http://exfat.googlecode.com/svn/trunk@379 60bc1c72-a15a-11de-b98f-4500b42dc123
Diffstat (limited to 'fuse/main.c')
-rw-r--r-- | fuse/main.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/fuse/main.c b/fuse/main.c index 4bf553e..333c2c4 100644 --- a/fuse/main.c +++ b/fuse/main.c @@ -157,8 +157,12 @@ static int fuse_exfat_release(const char* path, struct fuse_file_info* fi) static int fuse_exfat_fsync(const char* path, int datasync, struct fuse_file_info *fi) { + int rc; + exfat_debug("[%s] %s", __func__, path); - exfat_flush_node(&ef, get_node(fi)); + rc = exfat_flush_node(&ef, get_node(fi)); + if (rc != 0) + return rc; exfat_flush(&ef); return exfat_fsync(ef.dev); } |