[gnome-terminal] Fix build with latest glib
- From: Christian Persch <chpe src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-terminal] Fix build with latest glib
- Date: Wed, 7 Jul 2010 21:35:39 +0000 (UTC)
commit 27a489b5df201c33b17c1566baa93c7d820b9498
Author: Christian Persch <chpe gnome org>
Date: Wed Jul 7 23:35:14 2010 +0200
Fix build with latest glib
configure.ac | 2 +-
src/terminal.c | 25 +++++++++++--------------
2 files changed, 12 insertions(+), 15 deletions(-)
---
diff --git a/configure.ac b/configure.ac
index e4436cf..24673e6 100644
--- a/configure.ac
+++ b/configure.ac
@@ -40,7 +40,7 @@ GNOME_COMPILE_WARNINGS([maximum])
AM_GLIB_GNU_GETTEXT
GLIB_REQUIRED=2.25.0
-GIO_REQUIRED=2.25.9
+GIO_REQUIRED=2.25.11
GTK_REQUIRED=2.14.0
GCONF_REQUIRED=2.31.3
VTE_REQUIRED=0.25.1
diff --git a/src/terminal.c b/src/terminal.c
index 5c9b7b9..a4a40ec 100644
--- a/src/terminal.c
+++ b/src/terminal.c
@@ -57,20 +57,18 @@ ay_to_string (GVariant *variant,
const char *string;
gsize len;
- string = g_variant_get_byte_array (variant, &len);
- if (len == 0)
- return NULL;
-
- /* Validate that the string is nul-terminated and full-length */
- if (string[len - 1] != '\0') {
+ len = g_variant_get_size (variant);
+ if (len == 0) {
g_set_error_literal (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS,
- "String not nul-terminated!");
+ "NUL strings not allowed");
return NULL;
}
+
+ string = g_variant_get_bytestring (variant);
if (strlen (string) != (len - 1)) {
g_set_error (error, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS,
"String is shorter than claimed (claimed %" G_GSIZE_FORMAT " actual %" G_GSIZE_FORMAT ")",
- len, strlen (string));
+ len - 1, strlen (string));
return NULL;
}
@@ -340,21 +338,20 @@ name_lost_cb (GDBusConnection *connection,
g_variant_builder_open (&builder, G_VARIANT_TYPE ("aay"));
for (i = 0; i < data->argc; ++i)
- g_variant_builder_add (&builder, "@ay",
- g_variant_new_byte_array (data->argv[i], -1));
+ g_variant_builder_add (&builder, "^ay", data->argv[i]);
g_variant_builder_close (&builder); /* aay */
g_variant_builder_open (&builder, G_VARIANT_TYPE ("a{sv}"));
g_variant_builder_add (&builder, "{sv}",
"startup-notication-id",
- g_variant_new_byte_array (data->options->startup_id ? data->options->startup_id : "", -1));
+ g_variant_new_bytestring (data->options->startup_id ? data->options->startup_id : ""));
g_variant_builder_add (&builder, "{sv}",
"display-name",
- g_variant_new_byte_array (data->options->display_name ? data->options->display_name : "", -1));
+ g_variant_new_bytestring (data->options->display_name ? data->options->display_name : ""));
g_variant_builder_add (&builder, "{sv}",
"cwd",
- g_variant_new_byte_array (data->options->default_working_dir ? data->options->default_working_dir : "", -1));
+ g_variant_new_bytestring (data->options->default_working_dir ? data->options->default_working_dir : ""));
g_variant_builder_open (&builder, G_VARIANT_TYPE ("{sv}"));
g_variant_builder_add (&builder, "s", "environment");
@@ -372,7 +369,7 @@ name_lost_cb (GDBusConnection *connection,
continue;
str = g_strdup_printf ("%s=%s", envv[i], value);
- g_variant_builder_add (&builder, "@ay", g_variant_new_byte_array (str, -1));
+ g_variant_builder_add (&builder, "^ay", str);
g_free (str);
}
g_variant_builder_close (&builder); /* aay */
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]