aboutsummaryrefslogtreecommitdiffstats
path: root/mail/mail-display.c
diff options
context:
space:
mode:
authorDan Winship <danw@src.gnome.org>2001-09-06 07:34:03 +0800
committerDan Winship <danw@src.gnome.org>2001-09-06 07:34:03 +0800
commit35f6d9602967f597fd1a4ebade8fb411db836398 (patch)
tree0279704c1183e4a7d4264609a2ccd1390116a45a /mail/mail-display.c
parentd6dd04933149ca13536cdaf2b32ca79387e93bdb (diff)
downloadgsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar
gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar.gz
gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar.bz2
gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar.lz
gsoc2013-evolution-35f6d9602967f597fd1a4ebade8fb411db836398.tar.xz
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
Diffstat (limited to 'mail/mail-display.c')
-rw-r--r--mail/mail-display.c17
1 files changed, 6 insertions, 11 deletions
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);
}