aboutsummaryrefslogtreecommitdiff
path: root/modules/devices/dmi.c
diff options
context:
space:
mode:
authorLeandro Pereira <leandro@hardinfo.org>2016-07-30 20:00:47 -0300
committerLeandro Pereira <leandro@hardinfo.org>2016-07-30 20:00:47 -0300
commit096108b30570dc484fbe824cef05b668f00f7bbc (patch)
tree1602ae4da6ebfc8218bbe3fc862007f06548c5e7 /modules/devices/dmi.c
parentdba05904b24c3d498ccf0d9676ce40b16181a00f (diff)
`group` variable could be uninitialized while parsing DMI
Diffstat (limited to 'modules/devices/dmi.c')
-rw-r--r--modules/devices/dmi.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/modules/devices/dmi.c b/modules/devices/dmi.c
index 9c6e3009..55f1dcbb 100644
--- a/modules/devices/dmi.c
+++ b/modules/devices/dmi.c
@@ -130,7 +130,7 @@ gboolean dmi_get_info_sys()
{
FILE *dmi_file;
gchar buffer[256];
- const gchar *group;
+ const gchar *group = NULL;
DMIInfo *info;
gboolean dmi_failed = FALSE;
gint i;
@@ -146,10 +146,7 @@ gboolean dmi_get_info_sys()
if (*(info->name) == '$') {
group = info->name + 1;
dmi_info = h_strdup_cprintf("[%s]\n", dmi_info, group);
- } else {
- if (!info->file)
- continue;
-
+ } else if (group && info->file) {
if ((dmi_file = fopen(info->file, "r"))) {
(void)fgets(buffer, 256, dmi_file);
fclose(dmi_file);
@@ -183,6 +180,8 @@ gboolean dmi_get_info_sys()
dmi_failed = TRUE;
break;
}
+
+ group = NULL;
}
}