diff --git a/source/ubl-settings-video.c b/source/ubl-settings-video.c index 05f670b..7f3f525 100644 --- a/source/ubl-settings-video.c +++ b/source/ubl-settings-video.c @@ -1101,11 +1101,21 @@ void *yon_proprietary_local_get(main_window *widgets){ for (int i=0;i-1:0; - int package_status = !yon_char_is_empty(current[2])?yon_char_parsed_check_exist(kernels_installed,kernels_size,current[2])>-1:0; + int module_status = !yon_char_is_empty(current[1])?g_hash_table_contains(installed,current[1]):0; + int package_status = !yon_char_is_empty(current[2])?g_hash_table_contains(installed,current[2]):0; struct proprietary_struct *cur = malloc(sizeof(struct proprietary_struct)); cur->drivers=current; cur->drivers_size=current_size; @@ -1133,6 +1143,7 @@ void *yon_proprietary_local_get(main_window *widgets){ } } g_hash_table_unref(table); + g_hash_table_unref(installed); if (!size){ g_idle_add((GSourceFunc)yon_proprietary_connect,widgets); } diff --git a/source/ubl-settings-video.h b/source/ubl-settings-video.h index b82a832..f460d82 100644 --- a/source/ubl-settings-video.h +++ b/source/ubl-settings-video.h @@ -60,6 +60,7 @@ #define yon_get_is_installed_command(target) yon_char_append("pacman -Q ",target) #define yon_get_is_exist_command(target) yon_char_append("pacman -Ss ",target) #define yon_get_all_pacman_packages_command "pacman -Slq" +#define yon_get_add_installed_packages "pacman -Qq" #define get_adapter_info "lshw -c display -quiet |grep -oE \"vendor:[0-9a-zA-Z ]{1,}|description:[0-9a-zA-Z ]{1,}|product:[]0-9a-zA-Z [-]{1,}\"|sed 's/: /=/g';lspci | grep -E ' VGA | Display ' | cut -d\" \" -f 1 | xargs -i lspci -v -s {} |grep -oE \"Kernel[:a-zA-Z0-9: ,_]{1,}\"|sed 's/: /=/g'|sed 's/ /-/g'" #define get_adapter_info_json "lshw -c display -quiet -json"