diff options
Diffstat (limited to 'libappstream-glib/as-app-desktop.c')
-rw-r--r-- | libappstream-glib/as-app-desktop.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/libappstream-glib/as-app-desktop.c b/libappstream-glib/as-app-desktop.c index eb9cdc2..7155a13 100644 --- a/libappstream-glib/as-app-desktop.c +++ b/libappstream-glib/as-app-desktop.c @@ -411,6 +411,16 @@ as_app_parse_desktop_file (AsApp *app, return FALSE; } + /* check this is a valid desktop file */ + if (!g_key_file_has_group (kf, G_KEY_FILE_DESKTOP_GROUP)) { + g_set_error (error, + AS_APP_ERROR, + AS_APP_ERROR_INVALID_TYPE, + "Not a desktop file: no [%s]", + G_KEY_FILE_DESKTOP_GROUP); + return FALSE; + } + /* create app */ app_id = g_path_get_basename (desktop_file); as_app_set_id_kind (app, AS_ID_KIND_DESKTOP); |