};
EmpathyImportAccountData *
-empathy_import_account_data_new (void)
+empathy_import_account_data_new (const gchar *source)
{
EmpathyImportAccountData *data;
+ g_return_val_if_fail (!G_STR_EMPTY (source), NULL);
+
data = g_slice_new0 (EmpathyImportAccountData);
data->settings = g_hash_table_new_full (g_str_hash, g_str_equal, NULL,
(GDestroyNotify) tp_g_value_slice_free);
+ data->source = g_strdup (source);
return data;
}
g_object_unref (data->profile);
if (data->settings != NULL)
g_hash_table_destroy (data->settings);
+ if (data->source != NULL)
+ g_free (data->source);
g_slice_free (EmpathyImportAccountData, data);
}
COL_IMPORT, import,
COL_PROTOCOL, mc_profile_get_display_name (data->profile),
COL_NAME, g_value_get_string (value),
- COL_SOURCE, "Pidgin",
+ COL_SOURCE, data->source,
COL_ACCOUNT_DATA, data,
-1);
}
GHashTable *settings;
/* The profile to use for this account */
McProfile *profile;
+ /* The name of the account import source */
+ gchar *source;
} EmpathyImportAccountData;
-EmpathyImportAccountData *empathy_import_account_data_new (void);
+EmpathyImportAccountData *empathy_import_account_data_new (const gchar *source);
void empathy_import_account_data_free (EmpathyImportAccountData *data);
void empathy_import_dialog_show (GtkWindow *parent, gboolean warning);
continue;
/* Create account data struct */
- data = empathy_import_account_data_new ();
+ data = empathy_import_account_data_new ("Pidgin");
/* Parse account's child nodes to fill the account data struct */
for (child = node->children; child; child = child->next)