aboutsummaryrefslogtreecommitdiff
path: root/modules/devices
diff options
context:
space:
mode:
authorLeandro Pereira <leandro@hardinfo.org>2012-01-15 20:40:30 -0200
committerLeandro Pereira <leandro@hardinfo.org>2012-01-15 20:40:30 -0200
commit38a59425e2f18bfff12cd70e9a07a6b3bbf8c6f8 (patch)
tree46f93a589bf35983fb0fa099c3717e76b564f05c /modules/devices
parent0df66e809f9149842ad2e6752a040a23c22c7ebb (diff)
Do not list empty sensor categories
Diffstat (limited to 'modules/devices')
-rw-r--r--modules/devices/sensors.c12
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);