diff options
Diffstat (limited to 'mail/em-popup.c')
-rw-r--r-- | mail/em-popup.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/mail/em-popup.c b/mail/em-popup.c index 2c18d60041..9603a08a75 100644 --- a/mail/em-popup.c +++ b/mail/em-popup.c @@ -799,13 +799,14 @@ emp_standard_menu_factory(EPopup *emp, void *data) apps = g_app_info_get_all_for_type (cp ? cp : mime_type); g_free (cp); - if (apps == NULL && strcmp (mime_type, "application/octet-stream") == 0) { + if (apps == NULL || strcmp (mime_type, "application/octet-stream") == 0) { if (filename != NULL) { gchar *name_type; name_type = e_util_guess_mime_type (filename, FALSE); cp = g_content_type_from_mime_type (name_type); - apps = g_app_info_get_all_for_type (cp ? cp : name_type); + /* show alternative apps first */ + apps = g_list_concat (g_app_info_get_all_for_type (cp ? cp : name_type), apps); g_free (cp); g_free (name_type); } |