# HG changeset patch # User Daniel Atallah # Date 1209146510 0 # Node ID 8d3c68a8eed44d0b9a50028f9599871b8f11db9c # Parent 645423a7a7b65ca80a8d8faa2d295841ec420f69 Avoid allocating and freeing stuff unnecessarily. diff -r 645423a7a7b6 -r 8d3c68a8eed4 libpurple/protocols/irc/msgs.c --- a/libpurple/protocols/irc/msgs.c Fri Apr 25 17:57:54 2008 +0000 +++ b/libpurple/protocols/irc/msgs.c Fri Apr 25 18:01:50 2008 +0000 @@ -706,14 +706,14 @@ void irc_msg_invite(struct irc_conn *irc, const char *name, const char *from, char **args) { PurpleConnection *gc = purple_account_get_connection(irc->account); - GHashTable *components = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); - char *nick = irc_mask_nick(from); + GHashTable *components; + gchar *nick; - if (!args || !args[1] || !gc) { - g_free(nick); - g_hash_table_destroy(components); + if (!args || !args[1] || !gc) return; - } + + components = g_hash_table_new_full(g_str_hash, g_str_equal, g_free, g_free); + nick = irc_mask_nick(from); g_hash_table_insert(components, g_strdup("channel"), g_strdup(args[1]));