diff libpurple/protocols/qq/qq_proxy.c @ 21121:35b4f1dc4c8d

replace most calls to strerror with calls to g_strerror. strerror will return a locale-specific string in the locale-specific encoding, which isn't guaranteed to be UTF-8. g_strerror will always return a UTF-8 string. I left gg and zephyr untouched, since gg doesn't include glib headers yet, and zephyr does something weird with a #define for strerror. Someone more familliar with those should take a look. And the win32 guys should check and see if I screwed something up, since they had strerror #defined to something else. This should fix #2247 (and maybe some mystery crashes)
author Nathan Walp <nwalp@pidgin.im>
date Sat, 03 Nov 2007 17:52:28 +0000
parents 04fe5601fedb
children 38cc722159ff
line wrap: on
line diff
--- a/libpurple/protocols/qq/qq_proxy.c	Sat Nov 03 17:04:25 2007 +0000
+++ b/libpurple/protocols/qq/qq_proxy.c	Sat Nov 03 17:52:28 2007 +0000
@@ -237,7 +237,7 @@
 		close(source);
 		purple_input_remove(phb->inpa);
 
-		purple_debug_error("proxy", "getsockopt SO_ERROR check: %s\n", strerror(error));
+		purple_debug_error("proxy", "getsockopt SO_ERROR check: %s\n", g_strerror(error));
 
 		phb->func(phb->data, -1, _("Unable to connect"));
 		return;
@@ -265,7 +265,7 @@
 
 	if (fd < 0) {
 		purple_debug(PURPLE_DEBUG_ERROR, "QQ Redirect", 
-			"Unable to create socket: %s\n", strerror(errno));
+			"Unable to create socket: %s\n", g_strerror(errno));
 		return -1;
 	}
 
@@ -297,7 +297,7 @@
 			purple_debug(PURPLE_DEBUG_WARNING, "QQ", "Connect in asynchronous mode.\n");
 			phb->inpa = purple_input_add(fd, PURPLE_INPUT_WRITE, no_one_calls, phb);
 		} else {
-			purple_debug(PURPLE_DEBUG_ERROR, "QQ", "Connection failed: %d\n", strerror(errno));
+			purple_debug(PURPLE_DEBUG_ERROR, "QQ", "Connection failed: %d\n", g_strerror(errno));
 			close(fd);
 			return -1;
 		}		/* if errno */
@@ -497,7 +497,7 @@
 		ret = send(qd->fd, data, len, 0);
 	}
 	if (ret == -1)
-		purple_connection_error(qd->gc, strerror(errno));
+		purple_connection_error(qd->gc, g_strerror(errno));
 
 	return ret;
 }