Mercurial > pidgin.yaz
changeset 30874:cae0dd35d16a
merge of '514b763ddb36f2f1492895fc413c7774e3b56b9d'
and '54e89ae24cccf07b4297fb599bd7eafade1f5b84'
author | Elliott Sales de Andrade <qulogic@pidgin.im> |
---|---|
date | Tue, 24 Aug 2010 05:07:48 +0000 |
parents | 6c59e8ad1261 (diff) cbe5e9202925 (current diff) |
children | 797c03de8fa9 |
files | |
diffstat | 6 files changed, 16 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/COPYRIGHT Tue Aug 24 01:02:55 2010 +0000 +++ b/COPYRIGHT Tue Aug 24 05:07:48 2010 +0000 @@ -18,6 +18,7 @@ Copyright (C) 1998-2009 by the following: Saleem Abdulrasool +Jakub Adam Dave Ahlswede Manuel Amador Matt Amato
--- a/libpurple/media.c Tue Aug 24 01:02:55 2010 +0000 +++ b/libpurple/media.c Tue Aug 24 05:07:48 2010 +0000 @@ -515,7 +515,8 @@ if (!media->priv->sessions) { purple_debug_info("media", "Creating hash table for sessions\n"); - media->priv->sessions = g_hash_table_new(g_str_hash, g_str_equal); + media->priv->sessions = g_hash_table_new_full(g_str_hash, g_str_equal, + g_free, NULL); } g_hash_table_insert(media->priv->sessions, g_strdup(session->id), session); }
--- a/libpurple/media/backend-fs2.c Tue Aug 24 01:02:55 2010 +0000 +++ b/libpurple/media/backend-fs2.c Tue Aug 24 05:07:48 2010 +0000 @@ -208,11 +208,7 @@ } if (priv->participants) { - GList *participants = - g_hash_table_get_values(priv->participants); - for (; participants; participants = g_list_delete_link( - participants, participants)) - g_object_unref(participants->data); + g_hash_table_destroy(priv->participants); priv->participants = NULL; } @@ -1425,7 +1421,8 @@ if (!priv->sessions) { purple_debug_info("backend-fs2", "Creating hash table for sessions\n"); - priv->sessions = g_hash_table_new(g_str_hash, g_str_equal); + priv->sessions = g_hash_table_new_full(g_str_hash, g_str_equal, + g_free, NULL); } g_hash_table_insert(priv->sessions, g_strdup(session->id), session); @@ -1461,7 +1458,7 @@ purple_debug_info("backend-fs2", "Creating hash table for participants\n"); priv->participants = g_hash_table_new_full(g_str_hash, - g_str_equal, g_free, NULL); + g_str_equal, g_free, g_object_unref); } g_hash_table_insert(priv->participants, g_strdup(name), participant);
--- a/libpurple/media/codec.c Tue Aug 24 01:02:55 2010 +0000 +++ b/libpurple/media/codec.c Tue Aug 24 05:07:48 2010 +0000 @@ -83,9 +83,11 @@ PURPLE_MEDIA_CODEC_GET_PRIVATE(info); g_free(priv->encoding_name); for (; priv->optional_params; priv->optional_params = - g_list_delete_link(priv->optional_params, - priv->optional_params)) { - g_free(priv->optional_params->data); + g_list_delete_link(priv->optional_params, priv->optional_params)) { + PurpleKeyValuePair *param = priv->optional_params->data; + g_free(param->key); + g_free(param->value); + g_free(param); } } @@ -302,10 +304,10 @@ g_free(param->key); g_free(param->value); - g_free(param); priv->optional_params = g_list_remove(priv->optional_params, param); + g_free(param); } PurpleKeyValuePair *
--- a/libpurple/media/codec.h Tue Aug 24 01:02:55 2010 +0000 +++ b/libpurple/media/codec.h Tue Aug 24 05:07:48 2010 +0000 @@ -121,7 +121,8 @@ * * @param The codec to get the optional parameters from. * - * @return The list of optional parameters. + * @return The list of optional parameters. The list is owned by the codec and + * should not be freed. * * @since 2.6.0 */
--- a/libpurple/protocols/msn/session.c Tue Aug 24 01:02:55 2010 +0000 +++ b/libpurple/protocols/msn/session.c Tue Aug 24 05:07:48 2010 +0000 @@ -283,7 +283,7 @@ void msn_session_activate_login_timeout(MsnSession *session) { - if (!session->logged_in) { + if (!session->logged_in && session->connected) { session->login_timeout = purple_timeout_add_seconds(MSN_LOGIN_FQY_TIMEOUT, msn_login_timeout_cb, session);