summaryrefslogtreecommitdiff
path: root/libappstream-glib/as-store.c
diff options
context:
space:
mode:
Diffstat (limited to 'libappstream-glib/as-store.c')
-rw-r--r--libappstream-glib/as-store.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/libappstream-glib/as-store.c b/libappstream-glib/as-store.c
index 7ac5d2f..33278a8 100644
--- a/libappstream-glib/as-store.c
+++ b/libappstream-glib/as-store.c
@@ -2532,6 +2532,8 @@ as_store_load_installed (AsStore *store,
while ((tmp = g_dir_read_name (dir)) != NULL) {
AsApp *app_tmp;
+ GPtrArray *icons;
+ guint i;
g_autofree gchar *filename = NULL;
g_autoptr(AsApp) app = NULL;
filename = g_build_filename (path, tmp, NULL);
@@ -2562,6 +2564,14 @@ as_store_load_installed (AsStore *store,
return FALSE;
}
+ /* convert any UNKNOWN icons to LOCAL */
+ icons = as_app_get_icons (app);
+ for (i = 0; i < icons->len; i++) {
+ AsIcon *icon = g_ptr_array_index (icons, i);
+ if (as_icon_get_kind (icon) == AS_ICON_KIND_UNKNOWN)
+ as_icon_set_kind (icon, AS_ICON_KIND_STOCK);
+ }
+
/* don't match against non-package apps in the store */
if (scope == AS_APP_SCOPE_SYSTEM &&
g_str_has_prefix (path, "/usr/share")) {