OSDN Git Service

Utils review - numerical write functions
authorViorel Suman <viorel.suman@intel.com>
Fri, 6 Feb 2015 12:16:13 +0000 (14:16 +0200)
committerViorel Suman <viorel.suman@intel.com>
Mon, 9 Feb 2015 14:40:54 +0000 (16:40 +0200)
Numerical write functions updated in order to use
the just introduced basic file write function.

Change-Id: Id77bef1501b4f988929b7b06f44a6c8f2387d354
Signed-off-by: Viorel Suman <viorel.suman@intel.com>
utils.c

diff --git a/utils.c b/utils.c
index 6ee1f47..4dd316f 100644 (file)
--- 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};