From 9b8b8968da44117cb1671be9b1f9d4c21b3fdaf3 Mon Sep 17 00:00:00 2001 From: Viorel Suman Date: Fri, 6 Feb 2015 14:16:13 +0200 Subject: [PATCH] Utils review - numerical write functions Numerical write functions updated in order to use the just introduced basic file write function. Change-Id: Id77bef1501b4f988929b7b06f44a6c8f2387d354 Signed-off-by: Viorel Suman --- utils.c | 65 ++++++++++++----------------------------------------------------- 1 file changed, 12 insertions(+), 53 deletions(-) diff --git a/utils.c b/utils.c index 6ee1f47..4dd316f 100644 --- a/utils.c +++ b/utils.c @@ -131,35 +131,28 @@ int sysfs_read_uint64(const char path[PATH_MAX], uint64_t *value) int sysfs_write_int(const char path[PATH_MAX], int value) { - int ret; - int fd; - int len; char buf[20]; + int len = snprintf(buf, sizeof(buf), "%d", value); - len = sprintf(buf, "%d", value); - - if (!path[0] || len <= 0) { + if (len <= 0) { ALOGE("Unexpected condition in sysfs_write_int\n"); return -1; } - fd = open(path, O_WRONLY); - - if (fd == -1) { - ALOGV("Cannot open %s (%s)\n", path, strerror(errno)); - return -1; - } + return sysfs_write(path, buf, len); +} - ret = write(fd, buf, len); +int sysfs_write_float(const char path[PATH_MAX], float value) +{ + char buf[20]; + int len = snprintf(buf, sizeof(buf), "%g", value); - if (ret != len) { - ALOGW("Cannot write %s (%d bytes) to %s (%s)\n", buf, len, path, - strerror(errno)); + if (len <= 0) { + ALOGE("Unexpected condition in sysfs_write_float\n"); + return -1; } - close(fd); - - return ret; + return sysfs_write(path, buf, len); } @@ -195,40 +188,6 @@ int sysfs_read_str(const char path[PATH_MAX], char *buf, int buf_len) } -int sysfs_write_float(const char path[PATH_MAX], float value) -{ - int ret; - int fd; - int len; - char buf[20]; - - len = snprintf(buf, sizeof(buf), "%g", value); - - if (!path[0] || len <= 0) { - ALOGE("Unexpected condition in sysfs_write_float\n"); - return -1; - } - - fd = open(path, O_WRONLY); - - if (fd == -1) { - ALOGV("Cannot open %s (%s)\n", path, strerror(errno)); - return -1; - } - - ret = write(fd, buf, len); - - if (ret != len) { - ALOGW("Cannot write %s (%d bytes) to %s (%s)\n", buf, len, path, - strerror(errno)); - } - - close(fd); - - return ret; -} - - int64_t get_timestamp_realtime (void) { struct timespec ts = {0}; -- 2.11.0