diff --git a/gnome/src/config/accountlistconfigdialog.c b/gnome/src/config/accountlistconfigdialog.c
index e408ca5e06bcbea3823205d30e352a8188a620d7..182ac585babe60633693bf5adcf7b403fb71e09a 100644
--- a/gnome/src/config/accountlistconfigdialog.c
+++ b/gnome/src/config/accountlistconfigdialog.c
@@ -114,12 +114,15 @@ static void delete_account_cb(G_GNUC_UNUSED GtkButton *button, gpointer data)
     g_free(selected_accountID);
 }
 
+static void account_store_fill();
+
 static void
 run_account_dialog(const gchar *selected_accountID, SFLPhoneClient *client)
 {
     account_t *account = account_list_get_by_id(selected_accountID);
     GtkWidget *dialog = show_account_window(account, client);
     update_account_from_dialog(dialog, account);
+    account_store_fill();
 }
 
 static void row_activated_cb(GtkTreeView *view,
@@ -197,7 +200,6 @@ static void add_account_cb(SFLPhoneClient *client)
     account_t *new_account = create_default_account();
     account_list_add(new_account);
     run_account_dialog(new_account->accountID, client);
-    account_store_fill();
 }
 
 /**