[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