diff options
author | Leandro Pereira <leandro@hardinfo.org> | 2012-01-15 20:40:30 -0200 |
---|---|---|
committer | Leandro Pereira <leandro@hardinfo.org> | 2012-01-15 20:40:30 -0200 |
commit | 38a59425e2f18bfff12cd70e9a07a6b3bbf8c6f8 (patch) | |
tree | 46f93a589bf35983fb0fa099c3717e76b564f05c | |
parent | 0df66e809f9149842ad2e6752a040a23c22c7ebb (diff) |
Do not list empty sensor categories
-rw-r--r-- | modules/devices/sensors.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/modules/devices/sensors.c b/modules/devices/sensors.c index 1469c13e..be66afc7 100644 --- a/modules/devices/sensors.c +++ b/modules/devices/sensors.c @@ -233,8 +233,8 @@ static void read_sensors_hwmon(void) } for (sensor = hwmon_sensors; sensor->friendly_name; sensor++) { + char *output = NULL; DEBUG("current sensor type=%s", sensor->friendly_name); - sensors = g_strconcat(sensors, "[", sensor->friendly_name, "]\n", NULL); for (count = sensor->begin_at;; count++) { path_sensor = g_strdup_printf(sensor->path_format, path_hwmon, count); @@ -247,8 +247,8 @@ static void read_sensors_hwmon(void) mon = g_strdup_printf(sensor->key_format, count); name = get_sensor_label(mon); if (!g_str_equal(name, "ignore")) { - sensors = h_strdup_cprintf(sensor->value_format, - sensors, name, driver, + output = h_strdup_cprintf(sensor->value_format, + output, name, driver, adjust_sensor(mon, atof(tmp) / sensor->adjust_ratio)); } @@ -258,8 +258,12 @@ static void read_sensors_hwmon(void) g_free(name); g_free(path_sensor); } - } + if (output) { + sensors = g_strconcat(sensors, "[", sensor->friendly_name, "]\n", output, "\n", NULL); + g_free(output); + } + } g_free(path_hwmon); g_free(driver); |