diff options
Diffstat (limited to 'libpurple')
-rw-r--r-- | libpurple/protocols/msn/cmdproc.c | 4 | ||||
-rw-r--r-- | libpurple/protocols/msn/command.c | 14 | ||||
-rw-r--r-- | libpurple/protocols/msn/command.h | 8 | ||||
-rw-r--r-- | libpurple/protocols/msn/directconn.c | 2 | ||||
-rw-r--r-- | libpurple/protocols/msn/msg.c | 3 | ||||
-rw-r--r-- | libpurple/protocols/msn/slplink.c | 7 | ||||
-rw-r--r-- | libpurple/protocols/msn/slpmsg.c | 2 | ||||
-rw-r--r-- | libpurple/protocols/msn/slpmsg_part.c | 11 | ||||
-rw-r--r-- | libpurple/protocols/msn/slpmsg_part.h | 2 | ||||
-rw-r--r-- | libpurple/protocols/msn/user.c | 7 |
10 files changed, 9 insertions, 51 deletions
diff --git a/libpurple/protocols/msn/cmdproc.c b/libpurple/protocols/msn/cmdproc.c index cc4d684e67..25a6c41d17 100644 --- a/libpurple/protocols/msn/cmdproc.c +++ b/libpurple/protocols/msn/cmdproc.c @@ -58,7 +58,7 @@ msn_cmdproc_destroy(MsnCmdProc *cmdproc) msn_history_destroy(cmdproc->history); if (cmdproc->last_cmd != NULL) - msn_command_destroy(cmdproc->last_cmd); + msn_command_unref(cmdproc->last_cmd); g_hash_table_destroy(cmdproc->multiparts); @@ -329,7 +329,7 @@ msn_cmdproc_process_cmd_text(MsnCmdProc *cmdproc, const char *command) show_debug_cmd(cmdproc, TRUE, command); if (cmdproc->last_cmd != NULL) - msn_command_destroy(cmdproc->last_cmd); + msn_command_unref(cmdproc->last_cmd); cmdproc->last_cmd = msn_command_from_string(command); diff --git a/libpurple/protocols/msn/command.c b/libpurple/protocols/msn/command.c index 2352a5e5df..36f7c3005f 100644 --- a/libpurple/protocols/msn/command.c +++ b/libpurple/protocols/msn/command.c @@ -79,20 +79,10 @@ msn_command_from_string(const char *string) return cmd; } -void +static void msn_command_destroy(MsnCommand *cmd) { - g_return_if_fail(cmd != NULL); - - if (cmd->ref_count > 0) - { - msn_command_unref(cmd); - return; - } - - if (cmd->payload != NULL) - g_free(cmd->payload); - + g_free(cmd->payload); g_free(cmd->command); g_strfreev(cmd->params); g_free(cmd); diff --git a/libpurple/protocols/msn/command.h b/libpurple/protocols/msn/command.h index 78c4a25fcc..481a807883 100644 --- a/libpurple/protocols/msn/command.h +++ b/libpurple/protocols/msn/command.h @@ -64,14 +64,6 @@ struct _MsnCommand MsnCommand *msn_command_from_string(const char *string); /** - * Destroy a MsnCommand object if its ref count is zero, otherwise - * just unref it. - * - * @param cmd The MsnCommand to be destroyed. - */ -void msn_command_destroy(MsnCommand *cmd); - -/** * Increment the ref count. * * @param cmd The MsnCommand to be ref. diff --git a/libpurple/protocols/msn/directconn.c b/libpurple/protocols/msn/directconn.c index b0a1668f35..759133f5b6 100644 --- a/libpurple/protocols/msn/directconn.c +++ b/libpurple/protocols/msn/directconn.c @@ -602,7 +602,7 @@ msn_dc_process_packet(MsnDirectConn *dc, guint32 packet_length) if (dc->header.length) { part = msn_slpmsgpart_new_from_data(dc->in_buffer + 4, dc->header.length); msn_slplink_process_msg(dc->slplink, part); - msn_slpmsgpart_destroy(part); + msn_slpmsgpart_unref(part); } /* diff --git a/libpurple/protocols/msn/msg.c b/libpurple/protocols/msn/msg.c index 83f9b69f50..9722eb1846 100644 --- a/libpurple/protocols/msn/msg.c +++ b/libpurple/protocols/msn/msg.c @@ -70,7 +70,8 @@ msn_message_destroy(MsnMessage *msg) g_hash_table_destroy(msg->header_table); g_list_free(msg->header_list); - msn_slpmsgpart_destroy(msg->part); + if (msg->part) + msn_slpmsgpart_unref(msg->part); g_free(msg); } diff --git a/libpurple/protocols/msn/slplink.c b/libpurple/protocols/msn/slplink.c index c704458ad1..0ccd4b37a3 100644 --- a/libpurple/protocols/msn/slplink.c +++ b/libpurple/protocols/msn/slplink.c @@ -96,18 +96,11 @@ msn_slplink_destroy(MsnSlpLink *slplink) if (purple_debug_is_verbose()) purple_debug_info("msn", "slplink_destroy: slplink(%p)\n", slplink); - g_return_if_fail(slplink != NULL); - if (slplink->swboard != NULL) { slplink->swboard->slplinks = g_list_remove(slplink->swboard->slplinks, slplink); slplink->swboard = NULL; } - if (slplink->refs > 1) { - slplink->refs--; - return; - } - session = slplink->session; if (slplink->dc != NULL) { diff --git a/libpurple/protocols/msn/slpmsg.c b/libpurple/protocols/msn/slpmsg.c index 014cfe940c..aa1c83c239 100644 --- a/libpurple/protocols/msn/slpmsg.c +++ b/libpurple/protocols/msn/slpmsg.c @@ -85,7 +85,7 @@ msn_slpmsg_destroy(MsnSlpMessage *slpmsg) part->ack_cb = NULL; part->nak_cb = NULL; part->ack_data = NULL; - msn_slpmsgpart_destroy(part); + msn_slpmsgpart_unref(part); } slplink->slp_msgs = g_list_remove(slplink->slp_msgs, slpmsg); diff --git a/libpurple/protocols/msn/slpmsg_part.c b/libpurple/protocols/msn/slpmsg_part.c index 78303eb74a..4301ae9edc 100644 --- a/libpurple/protocols/msn/slpmsg_part.c +++ b/libpurple/protocols/msn/slpmsg_part.c @@ -81,17 +81,8 @@ MsnSlpMessagePart *msn_slpmsgpart_new_from_data(const char *data, size_t data_le return part; } -void msn_slpmsgpart_destroy(MsnSlpMessagePart *part) +static void msn_slpmsgpart_destroy(MsnSlpMessagePart *part) { - if (!part) - return; - - if (part->ref_count > 0) { - msn_slpmsgpart_unref(part); - - return; - } - g_free(part->header); g_free(part->footer); diff --git a/libpurple/protocols/msn/slpmsg_part.h b/libpurple/protocols/msn/slpmsg_part.h index 5dda1c0842..bfadf4321f 100644 --- a/libpurple/protocols/msn/slpmsg_part.h +++ b/libpurple/protocols/msn/slpmsg_part.h @@ -49,8 +49,6 @@ MsnSlpMessagePart *msn_slpmsgpart_new(MsnP2PHeader *header, MsnP2PFooter *footer MsnSlpMessagePart *msn_slpmsgpart_new_from_data(const char *data, size_t data_len); -void msn_slpmsgpart_destroy(MsnSlpMessagePart *part); - MsnSlpMessagePart *msn_slpmsgpart_ref(MsnSlpMessagePart *part); void msn_slpmsgpart_unref(MsnSlpMessagePart *part); diff --git a/libpurple/protocols/msn/user.c b/libpurple/protocols/msn/user.c index 991a9822c2..1f40229926 100644 --- a/libpurple/protocols/msn/user.c +++ b/libpurple/protocols/msn/user.c @@ -57,13 +57,6 @@ msn_user_new(MsnUserList *userlist, const char *passport, static void msn_user_destroy(MsnUser *user) { - g_return_if_fail(user != NULL); - - if (user->refcount > 1) { - msn_user_unref(user); - return; - } - while (user->endpoints != NULL) { free_user_endpoint(user->endpoints->data); user->endpoints = g_slist_delete_link(user->endpoints, user->endpoints); |