aboutsummaryrefslogtreecommitdiffstats
path: root/src/empathy-accounts-dialog.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/empathy-accounts-dialog.c')
-rw-r--r--src/empathy-accounts-dialog.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/src/empathy-accounts-dialog.c b/src/empathy-accounts-dialog.c
index 4de6911e1..578f998bc 100644
--- a/src/empathy-accounts-dialog.c
+++ b/src/empathy-accounts-dialog.c
@@ -785,14 +785,13 @@ account_dialog_show_contact_details_failed (EmpathyAccountsDialog *dialog,
static void
create_contact_info_editor (EmpathyAccountsDialog *self,
- TpConnection *conn)
+ TpContact *tp_contact)
{
EmpathyAccountsDialogPriv *priv = GET_PRIV (self);
GtkWidget *editor, *alig;
EmpathyContact *contact;
- contact = empathy_contact_dup_from_tp_contact (
- tp_connection_get_self_contact (conn));
+ contact = empathy_contact_dup_from_tp_contact (tp_contact);
alig = gtk_alignment_new (0.5, 0, 1, 1);
@@ -819,6 +818,7 @@ account_dialog_create_dialog_content (EmpathyAccountsDialog *dialog,
const gchar *icon_name;
TpAccount *account;
TpConnection *conn = NULL;
+ TpContact *contact = NULL;
GtkWidget *bbox, *button;
account = empathy_account_settings_get_account (settings);
@@ -835,7 +835,12 @@ account_dialog_create_dialog_content (EmpathyAccountsDialog *dialog,
if (conn != NULL &&
tp_proxy_get_invalidated (conn) == NULL)
{
- create_contact_info_editor (dialog, conn);
+ contact = tp_connection_get_self_contact (conn);
+ }
+
+ if (contact != NULL)
+ {
+ create_contact_info_editor (dialog, contact);
}
else
{