[Xfce4-commits] r29943 - xfce4-panel/trunk/plugins/launcher

Nick Schermer nick at xfce.org
Mon May 11 21:44:41 CEST 2009


Author: nick
Date: 2009-05-11 19:44:41 +0000 (Mon, 11 May 2009)
New Revision: 29943

Modified:
   xfce4-panel/trunk/plugins/launcher/launcher-exec.c
Log:
Simply append exo-open when running in a terminal. This works properly with the recent fixes in exo-open.


Modified: xfce4-panel/trunk/plugins/launcher/launcher-exec.c
===================================================================
--- xfce4-panel/trunk/plugins/launcher/launcher-exec.c	2009-05-11 19:42:21 UTC (rev 29942)
+++ xfce4-panel/trunk/plugins/launcher/launcher-exec.c	2009-05-11 19:44:41 UTC (rev 29943)
@@ -264,6 +264,9 @@
     GSList       *li;
     gchar       **argv = NULL;
 
+    if (entry->terminal)
+        g_string_append (command_line, "exo-open --launch TerminalEmulator");
+
     /* build the full command */
     for (p = entry->exec; *p != '\0'; ++p)
     {
@@ -377,25 +380,9 @@
 
     DBG ("Execute: %s", command_line->str);
 
-    /* create the argv */
+    /* use glib to parge the argv */
     if (G_LIKELY (command_line->str != NULL))
-    {
-        if (entry->terminal == FALSE)
-        {
-            /* use glib to parge the argv */
-            g_shell_parse_argv (command_line->str, NULL, &argv, error);
-        }
-        else
-        {
-            /* we parse our own argv here so exo-open will handle all attributes without problems */
-            argv = g_new (gchar *, 5);
-            argv[0] = g_strdup ("exo-open");
-            argv[1] = g_strdup ("--launch");
-            argv[2] = g_strdup ("TerminalEmulator");
-            argv[3] = g_strdup (command_line->str);
-            argv[4] = NULL;
-        }
-    }
+        g_shell_parse_argv (command_line->str, NULL, &argv, error);
 
     /* cleanup */
     g_string_free (command_line, TRUE);




More information about the Xfce4-commits mailing list