diff options
author | Leandro Pereira <leandro@hardinfo.org> | 2012-01-26 22:14:43 -0200 |
---|---|---|
committer | Leandro Pereira <leandro@hardinfo.org> | 2012-01-26 22:14:43 -0200 |
commit | d3b9aa19f04e6be78afb8497e7808a3d42042bf2 (patch) | |
tree | 340e9be8f863e1ad29e1da91cd87a66409d6f706 /modules/devices.c | |
parent | d9e242117b7a73dd3057af25956027a361f7999f (diff) |
Better manage moreinfo hashes
Have only one for the whole program and use per-module namespaces/prefixes
so that each module can clear its own information easily.
Diffstat (limited to 'modules/devices.c')
-rw-r--r-- | modules/devices.c | 13 |
1 files changed, 5 insertions, 8 deletions
diff --git a/modules/devices.c b/modules/devices.c index a8f990ed..8e2daa27 100644 --- a/modules/devices.c +++ b/modules/devices.c @@ -98,8 +98,6 @@ gchar *battery_list = NULL; gchar *meminfo = NULL; gchar *lginterval = NULL; -GHashTable *moreinfo = NULL; - #include <vendor.h> gchar *get_processor_name(void) @@ -186,8 +184,8 @@ gchar *get_motherboard(void) scan_dmi(FALSE); - board_name = (gchar *)g_hash_table_lookup(moreinfo, "DMI:Board:Name"); - board_vendor = (gchar *)g_hash_table_lookup(moreinfo, "DMI:Board:Vendor"); + board_name = moreinfo_lookup("DEV:DMI:Board:Name"); + board_vendor = moreinfo_lookup("DEV:DMI:Board:Vendor"); if (board_name && board_vendor && *board_name && *board_vendor) return g_strconcat(board_vendor, " ", board_name, NULL); @@ -219,7 +217,7 @@ ShellModuleMethod *hi_exported_methods(void) gchar *hi_more_info(gchar * entry) { - gchar *info = (gchar *) g_hash_table_lookup(moreinfo, entry); + gchar *info = moreinfo_lookup_with_prefix("DEV", entry); if (info) return g_strdup(info); @@ -229,7 +227,7 @@ gchar *hi_more_info(gchar * entry) gchar *hi_get_field(gchar * field) { - gchar *info = (gchar *) g_hash_table_lookup(moreinfo, field); + gchar *info = moreinfo_lookup_with_prefix("DEV", field); if (info) return g_strdup(info); @@ -445,7 +443,6 @@ void hi_module_init(void) } #endif /* defined(ARCH_x86) */ - moreinfo = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); init_memory_labels(); init_cups(); sensors_init(); @@ -453,8 +450,8 @@ void hi_module_init(void) void hi_module_deinit(void) { + moreinfo_del_with_prefix("DEV"); sensors_shutdown(); - g_hash_table_destroy(moreinfo); g_hash_table_destroy(memlabels); g_module_close(cups); } |