summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBastien Nocera <hadess@hadess.net>2018-09-11 18:13:42 +0200
committerRichard Hughes <richard@hughsie.com>2018-09-11 17:52:27 +0100
commit04657ba65de0e78daec1bba12feb737bc8fd514b (patch)
treeae53c1503c254e51eb285212f8f8ee336cdd0ef0
parent479ed68318a5a78b95d93b70ebdddfd37585934c (diff)
downloadappstream-glib-04657ba65de0e78daec1bba12feb737bc8fd514b.tar.gz
Throw an error when a launchable desktop-id is invalid
See https://github.com/flathub/com.adobe.Flash-Player-Projector/issues/2
-rw-r--r--client/as-compose.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/client/as-compose.c b/client/as-compose.c
index 4098ddd..d55ec76 100644
--- a/client/as-compose.c
+++ b/client/as-compose.c
@@ -478,6 +478,13 @@ main (int argc, char **argv)
g_string_append (desktop_basename, ".desktop");
}
+ if (!g_str_has_suffix (desktop_basename->str, ".desktop")) {
+ /* TRANSLATORS: not a valid desktop filename */
+ g_print ("%s: %s\n", _("Invalid desktop filename"),
+ desktop_basename->str);
+ return EXIT_FAILURE;
+ }
+
desktop_path = g_build_filename (prefix, "share", "applications",
desktop_basename->str, NULL);
g_debug ("looking for desktop path '%s'", desktop_path);