# HG changeset patch # User Etan Reisner # Date 1204071897 0 # Node ID cf596f8b7c48c6f225091060e7b120b8ed8e67b3 # Parent 981169c12d12a03e6fd3faeb4da5346c44421ac0# Parent 89a036334991e184466d6cd585e7243ea0cfa456 merge of '3195166356877e091e9b3d663bc03f7682ed3a17' and 'f098694fd1cdc20d007bd8673331025582164fed' diff -r 981169c12d12 -r cf596f8b7c48 libpurple/account.c --- a/libpurple/account.c Tue Feb 26 14:28:52 2008 +0000 +++ b/libpurple/account.c Wed Feb 27 00:24:57 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); }