--- a/libpurple/conversation.c Wed Apr 29 00:52:08 2009 +0000 +++ b/libpurple/conversation.c Wed Apr 29 18:19:22 2009 +0000 @@ -1477,11 +1477,11 @@ return; if (!(flags & PURPLE_MESSAGE_WHISPER)) { - char *str; - - str = g_strdup(purple_normalize(account, who)); - - if (!strcmp(str, purple_normalize(account, chat->nick))) { + const char *str; + + str = purple_normalize(account, who); + + if (purple_strequal(str, chat->nick)) { flags |= PURPLE_MESSAGE_SEND; } else { flags |= PURPLE_MESSAGE_RECV; @@ -1489,8 +1489,6 @@ if (purple_utf8_has_word(message, chat->nick)) flags |= PURPLE_MESSAGE_NICK; } - - g_free(str); } /* Pass this on to either the ops structure or the default write func. */