[Xfce4-commits] <terminal:master> Use byte strings.

Nick Schermer noreply at xfce.org
Fri Dec 21 00:12:01 CET 2012


Updating branch refs/heads/master
         to f09b3ba79b11b2b7c54be8ee2a768a9a9a76bdd9 (commit)
       from 3610a76a4791f4b0c00c25b0ee2bd323fd8c7000 (commit)

commit f09b3ba79b11b2b7c54be8ee2a768a9a9a76bdd9
Author: Nick Schermer <nick at xfce.org>
Date:   Fri Dec 21 00:10:51 2012 +0100

    Use byte strings.
    
    Not sure if the data is utf8.

 configure.ac.in           |    2 +-
 terminal/terminal-gdbus.c |   17 ++++++++++-------
 2 files changed, 11 insertions(+), 8 deletions(-)

diff --git a/configure.ac.in b/configure.ac.in
index 26ccee8..240d7ab 100644
--- a/configure.ac.in
+++ b/configure.ac.in
@@ -14,7 +14,7 @@ m4_define([terminal_version_micro], [8])
 m4_define([terminal_version_nano], [])
 m4_define([terminal_version_build], [@REVISION@])
 m4_define([terminal_version_tag], [git])
-m4_define([terminal_version_dbus], [4])
+m4_define([terminal_version_dbus], [5])
 m4_define([terminal_version], [terminal_version_major().terminal_version_minor().terminal_version_micro()ifelse(terminal_version_nano(), [], [], [.terminal_version_nano()])ifelse(terminal_version_tag(), [git], [terminal_version_tag()-terminal_version_build()], [terminal_version_tag()])])
 
 dnl *******************************************
diff --git a/terminal/terminal-gdbus.c b/terminal/terminal-gdbus.c
index 3f8f6e4..69de0f5 100644
--- a/terminal/terminal-gdbus.c
+++ b/terminal/terminal-gdbus.c
@@ -40,9 +40,9 @@ static const gchar terminal_gdbus_introspection_xml[] =
   "<node>"
     "<interface name='" TERMINAL_DBUS_INTERFACE "'>"
       "<method name='" TERMINAL_DBUS_METHOD_LAUNCH "'>"
-        "<arg type='x' name='uid' direction='in'/>"
-        "<arg type='s' name='display-name' direction='in'/>"
-        "<arg type='as' name='argv' direction='in'/>"
+        "<arg type='u' name='uid' direction='in'/>"
+        "<arg type='ay' name='display-name' direction='in'/>"
+        "<arg type='aay' name='argv' direction='in'/>"
       "</method>"
     "</interface>"
   "</node>";
@@ -60,8 +60,8 @@ terminal_gdbus_method_call (GDBusConnection       *connection,
                             gpointer               user_data)
 {
   TerminalApp  *app = TERMINAL_APP (user_data);
-  gint64        uid = -1;
-  const gchar  *display_name = NULL;
+  guint32       uid = G_MAXUINT32;
+  gchar        *display_name = NULL;
   gchar       **argv = NULL;
   GError       *error = NULL;
 
@@ -72,7 +72,7 @@ terminal_gdbus_method_call (GDBusConnection       *connection,
   if (g_strcmp0 (method_name, TERMINAL_DBUS_METHOD_LAUNCH) == 0)
     {
       /* get paramenters */
-      g_variant_get (parameters, "(xs^as)", &uid, &display_name, &argv);
+      g_variant_get (parameters, "(u^ay^aay)", &uid, &display_name, &argv);
 
       if (uid != getuid ())
         {
@@ -98,6 +98,9 @@ terminal_gdbus_method_call (GDBusConnection       *connection,
           /* everything went fine */
           g_dbus_method_invocation_return_value (invocation, NULL);
         }
+
+      g_free (display_name);
+      g_strfreev (argv);
     }
   else
     {
@@ -193,7 +196,7 @@ terminal_gdbus_invoke_launch (gint     argc,
                                        TERMINAL_DBUS_PATH,
                                        TERMINAL_DBUS_INTERFACE,
                                        TERMINAL_DBUS_METHOD_LAUNCH,
-                                       g_variant_new ("(xs^as)",
+                                       g_variant_new ("(u^ay^aay)",
                                                       getuid (),
                                                       g_getenv ("DISPLAY"),
                                                       argv),


More information about the Xfce4-commits mailing list