diff -r dceac1fa805a -r bc03c7494ba4 libpurple/protocols/irc/parse.c --- a/libpurple/protocols/irc/parse.c Thu Jun 26 08:42:49 2008 +0000 +++ b/libpurple/protocols/irc/parse.c Thu Jun 26 09:07:56 2008 +0000 @@ -232,7 +232,7 @@ if (encodings[0] == NULL || !g_ascii_strcasecmp("UTF-8", encodings[0])) { g_strfreev(encodings); - return g_strdup(string); + return NULL; } utf8 = g_convert(string, strlen(string), encodings[0], "UTF-8", NULL, NULL, &err); @@ -597,7 +597,7 @@ case 'n': case 'c': tmp = irc_send_convert(irc, tok); - g_string_append(string, tmp); + g_string_append(string, tmp ? tmp : tok); g_free(tmp); break; default: