diff options
author | Dan Winship <danw@src.gnome.org> | 2001-09-06 07:34:03 +0800 |
---|---|---|
committer | Dan Winship <danw@src.gnome.org> | 2001-09-06 07:34:03 +0800 |
commit | 35f6d9602967f597fd1a4ebade8fb411db836398 (patch) | |
tree | 0279704c1183e4a7d4264609a2ccd1390116a45a | |
parent | d6dd04933149ca13536cdaf2b32ca79387e93bdb (diff) | |
download | gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar.gz gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar.zst gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.zip |
the "command" of a GnomeVFSMimeApplication can include arguments as well.
* mail-display.c (launch_cb): the "command" of a
GnomeVFSMimeApplication can include arguments as well. Deal with
that. Fixes support for CodeWeavers' CrossOver Plugin.
svn path=/trunk/; revision=12643
-rw-r--r-- | mail/ChangeLog | 6 | ||||
-rw-r--r-- | mail/mail-display.c | 17 |
2 files changed, 12 insertions, 11 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog index bbddcbce1c..683d509a64 100644 --- a/mail/ChangeLog +++ b/mail/ChangeLog @@ -1,3 +1,9 @@ +2001-09-05 Dan Winship <danw@ximian.com> + + * mail-display.c (launch_cb): the "command" of a + GnomeVFSMimeApplication can include arguments as well. Deal with + that. Fixes support for CodeWeavers' CrossOver Plugin. + 2001-09-05 Jeffrey Stedfast <fejj@ximian.com> * mail-config.c (mail_config_remove_account): Adjust the diff --git a/mail/mail-display.c b/mail/mail-display.c index 11bce0adc8..dc75a27e78 100644 --- a/mail/mail-display.c +++ b/mail/mail-display.c @@ -251,7 +251,7 @@ launch_cb (GtkWidget *widget, gpointer user_data) MailMimeHandler *handler; GList *apps, *children, *c; GnomeVFSMimeApplication *app; - char *filename, *url, *argv[2]; + char *command, *filename; const char *tmpdir; handler = mail_lookup_handler (gtk_object_get_data (user_data, "mime_type")); @@ -287,16 +287,11 @@ launch_cb (GtkWidget *widget, gpointer user_data) return; } - if (app->expects_uris == GNOME_VFS_MIME_APPLICATION_ARGUMENT_TYPE_URIS) { - url = g_strdup_printf ("file:%s", filename); - g_free (filename); - filename = url; - } - - argv[0] = app->command; - argv[1] = filename; - - gnome_execute_async (tmpdir, 2, argv); + command = g_strdup_printf ("%s %s%s &", app->command, + app->expects_uris == GNOME_VFS_MIME_APPLICATION_ARGUMENT_TYPE_URIS ? "file:" : "", + filename); + system (command); + g_free (command); g_free (filename); } |