diff libgaim/dbus-server.c @ 15080:d24de6319f87

[gaim-migrate @ 17866] Get rid of a bunch of compile warnings committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Fri, 01 Dec 2006 08:07:17 +0000
parents 06ae7ffc47e3
children
line wrap: on
line diff
--- a/libgaim/dbus-server.c	Fri Dec 01 05:01:51 2006 +0000
+++ b/libgaim/dbus-server.c	Fri Dec 01 08:07:17 2006 +0000
@@ -668,7 +668,6 @@
 		guint xuint;
 		gboolean xboolean;
 		gpointer ptr = NULL;
-		gboolean allocated = FALSE;
 
 		if (gaim_value_is_outgoing(gaim_values[i]))
 		{
@@ -693,13 +692,14 @@
 		case GAIM_TYPE_STRING:
 			str = null_to_empty(my_arg(char*));
 			if (!g_utf8_validate(str, -1, NULL)) {
+				gchar *tmp;
 				gaim_debug_error("dbus", "Invalid UTF-8 string passed to signal, emitting salvaged string!\n");
-				str = gaim_utf8_salvage(str);
-				allocated = TRUE;
+				tmp = gaim_utf8_salvage(str);
+				dbus_message_iter_append_basic(iter, DBUS_TYPE_STRING, &tmp);
+				g_free(tmp);
+			} else {
+				dbus_message_iter_append_basic(iter, DBUS_TYPE_STRING, &str);
 			}
-			dbus_message_iter_append_basic(iter, DBUS_TYPE_STRING, &str);
-			if (allocated)
-				g_free(str);
 			break;
 		case GAIM_TYPE_SUBTYPE: /* registered pointers only! */
 		case GAIM_TYPE_POINTER: