# HG changeset patch # User Etan Reisner # Date 1204152094 0 # Node ID 1eadbca855f03e4c98c630bc6c343af86534e6f1 # Parent b8774519bda0201dcbdecdff61cc0ac581dd44c7# Parent cf596f8b7c48c6f225091060e7b120b8ed8e67b3 merge of '662b18e22ed66890ffcb81db34c948405b31f4c7' and 'c75212a9281c1a006eb33e70196e493431421b89' diff -r b8774519bda0 -r 1eadbca855f0 libpurple/account.c --- a/libpurple/account.c Wed Feb 27 20:31:46 2008 +0000 +++ b/libpurple/account.c Wed Feb 27 22:41:34 2008 +0000 @@ -751,6 +751,7 @@ description = g_strdup(""); current_error = g_new0(PurpleConnectionErrorInfo, 1); + PURPLE_DBUS_REGISTER_POINTER(current_error, PurpleConnectionErrorInfo); current_error->type = type; current_error->description = description; @@ -1009,6 +1010,7 @@ purple_log_free(account->system_log); priv = PURPLE_ACCOUNT_GET_PRIVATE(account); + PURPLE_DBUS_UNREGISTER_POINTER(priv->current_error); g_free(priv->current_error); g_free(priv); @@ -2365,8 +2367,7 @@ } static void -set_current_error(PurpleAccount *account, - PurpleConnectionErrorInfo *new_err) +set_current_error(PurpleAccount *account, PurpleConnectionErrorInfo *new_err) { PurpleAccountPrivate *priv; PurpleConnectionErrorInfo *old_err; @@ -2389,6 +2390,7 @@ if(old_err) g_free(old_err->description); + PURPLE_DBUS_UNREGISTER_POINTER(old_err); g_free(old_err); }