From: relan Date: Sun, 1 Jun 2014 20:02:48 +0000 (+0000) Subject: Print errno on device open/close/fsync failure. X-Git-Tag: android-x86-6.0-r1~48 X-Git-Url: http://git.osdn.net/view?p=android-x86%2Fexternal-exfat.git;a=commitdiff_plain;h=770484564e0153caeb23cdeaa8a47afee4c4f1cd Print errno on device open/close/fsync failure. Signed-off-by: Helg Bredow --- diff --git a/libexfat/io.c b/libexfat/io.c index 05fac61..9743c4e 100644 --- a/libexfat/io.c +++ b/libexfat/io.c @@ -100,7 +100,8 @@ struct exfat_dev* exfat_open(const char* spec, enum exfat_mode mode) if (dev->fd == -1) { free(dev); - exfat_error("failed to open '%s' in read-only mode", spec); + exfat_error("failed to open '%s' in read-only mode: %s", spec, + strerror(errno)); return NULL; } dev->mode = EXFAT_MODE_RO; @@ -110,7 +111,8 @@ struct exfat_dev* exfat_open(const char* spec, enum exfat_mode mode) if (dev->fd == -1) { free(dev); - exfat_error("failed to open '%s' in read-write mode", spec); + exfat_error("failed to open '%s' in read-write mode: %s", spec, + strerror(errno)); return NULL; } dev->mode = EXFAT_MODE_RW; @@ -130,7 +132,7 @@ struct exfat_dev* exfat_open(const char* spec, enum exfat_mode mode) break; } free(dev); - exfat_error("failed to open '%s'", spec); + exfat_error("failed to open '%s': %s", spec, strerror(errno)); return NULL; } @@ -254,7 +256,7 @@ int exfat_close(struct exfat_dev* dev) #endif if (close(dev->fd) != 0) { - exfat_error("failed to close device"); + exfat_error("failed to close device: %s", strerror(errno)); rc = -EIO; } free(dev); @@ -274,7 +276,7 @@ int exfat_fsync(struct exfat_dev* dev) #endif if (fsync(dev->fd) != 0) { - exfat_error("fsync failed"); + exfat_error("fsync failed: %s", strerror(errno)); rc = -EIO; } return rc;