aboutsummaryrefslogtreecommitdiff
path: root/modules/devices.c
diff options
context:
space:
mode:
authorBurt P <pburt0@gmail.com>2017-08-15 15:29:50 -0500
committerLeandro A. F. Pereira <leandro@hardinfo.org>2017-08-27 08:21:05 -0700
commitaa5f165d7add2d8c9b5e26c5948348cdc9230122 (patch)
tree985ac5556205cd6d22e2a2c090a499f2897356bc /modules/devices.c
parent6c2d70cdd4967bf660cded2a407fa679da0b6eb6 (diff)
devices: get_motherboard() fallbacks for board_name and board_vendor
Signed-off-by: Burt P <pburt0@gmail.com>
Diffstat (limited to 'modules/devices.c')
-rw-r--r--modules/devices.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/modules/devices.c b/modules/devices.c
index 7b848354..16c68c1b 100644
--- a/modules/devices.c
+++ b/modules/devices.c
@@ -366,13 +366,18 @@ gchar *get_motherboard(void)
scan_dmi(FALSE);
board_name = dmi_get_str("baseboard-product-name");
+ if (board_name == NULL || !strlen(board_name) )
+ board_name = dmi_get_str("system-product-name");
+ if (board_name == NULL || !strlen(board_name) )
+ board_name = strdup(_(" (model unknown)"));
+
board_vendor = dmi_get_str("baseboard-manufacturer");
- product_version = dmi_get_str("system-product-version");
+ if (board_vendor == NULL || !strlen(board_vendor) )
+ board_vendor = dmi_get_str("system-manufacturer");
+ if (board_vendor == NULL || !strlen(board_vendor) )
+ board_vendor = strdup(_(" (vendor unknown)"));
- if (!board_name || !*board_name)
- board_name = _(" (model unknown)");
- if (!board_vendor || !*board_vendor)
- board_vendor = _(" (vendor unknown)");
+ product_version = dmi_get_str("system-product-version");
if (product_version && strlen(product_version) )
ret = g_strdup_printf("%s / %s (%s)", product_version, board_name, board_vendor);