aboutsummaryrefslogtreecommitdiffstats
path: root/src/empathy-import-pidgin.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/empathy-import-pidgin.c')
-rw-r--r--src/empathy-import-pidgin.c31
1 files changed, 16 insertions, 15 deletions
diff --git a/src/empathy-import-pidgin.c b/src/empathy-import-pidgin.c
index 935c022ea..23b1d84f5 100644
--- a/src/empathy-import-pidgin.c
+++ b/src/empathy-import-pidgin.c
@@ -22,6 +22,7 @@
#include <config.h>
#include <string.h>
+#include <unistd.h>
#include <glib.h>
#include <glib/gstdio.h>
@@ -31,7 +32,7 @@
#include <telepathy-glib/util.h>
#include <telepathy-glib/dbus.h>
-#include "empathy-import-dialog.h"
+#include "empathy-import-utils.h"
#include "empathy-import-pidgin.h"
#define DEBUG_FLAG EMPATHY_DEBUG_OTHER
@@ -114,8 +115,7 @@ import_dialog_pidgin_parse_setting (EmpathyImportAccountData *data,
/* Search for the map corresponding to setting we are parsing */
for (i = 0; i < G_N_ELEMENTS (pidgin_cm_map); i++)
{
- if (!tp_strdiff (mc_profile_get_protocol_name (data->profile),
- pidgin_cm_map[i].protocol) &&
+ if (!tp_strdiff (data->protocol, pidgin_cm_map[i].protocol) &&
!tp_strdiff (tag_name, pidgin_cm_map[i].pidgin_name))
{
item = pidgin_cm_map + i;
@@ -199,23 +199,26 @@ empathy_import_pidgin_load (void)
if (!tp_strdiff ((gchar *) child->name,
PIDGIN_ACCOUNT_TAG_PROTOCOL))
{
- gchar *content;
+ xmlChar *content;
const gchar *protocol;
- protocol = content = (gchar *) xmlNodeGetContent (child);
+ content = xmlNodeGetContent (child);
+
+ protocol = (const gchar *) content;
if (g_str_has_prefix (protocol, "prpl-"))
protocol += 5;
if (!tp_strdiff (protocol, PIDGIN_PROTOCOL_BONJOUR))
- protocol = "salut";
+ data->protocol = g_strdup ("salut");
else if (!tp_strdiff (protocol, PIDGIN_PROTOCOL_NOVELL))
- protocol = "groupwise";
+ data->protocol = g_strdup ("groupwise");
+ else
+ data->protocol = g_strdup (protocol);
- data->profile = mc_profile_lookup (protocol);
- g_free (content);
+ xmlFree (content);
- if (data->profile == NULL)
+ if (data->protocol == NULL)
break;
}
@@ -240,8 +243,7 @@ empathy_import_pidgin_load (void)
username = name;
/* Split "username@server" if it is an IRC account */
- if (strstr (name, "@") && !tp_strdiff (
- mc_profile_get_protocol_name (data->profile), "irc"))
+ if (strstr (name, "@") && !tp_strdiff (data->protocol, "irc"))
{
nick_server = g_strsplit (name, "@", 2);
username = nick_server[0];
@@ -287,12 +289,11 @@ empathy_import_pidgin_load (void)
/* If we have the needed settings, add the account data to the list,
* otherwise free the data */
- if (data->profile != NULL && g_hash_table_size (data->settings) > 0)
+ if (data->protocol != NULL && g_hash_table_size (data->settings) > 0)
{
/* Special-case XMPP:
* http://bugzilla.gnome.org/show_bug.cgi?id=579992 */
- if (!tp_strdiff (
- mc_profile_get_protocol_name (data->profile), "jabber"))
+ if (!tp_strdiff (data->protocol, "jabber"))
{
if (EMP_STR_EMPTY (tp_asv_get_string (data->settings, "server")))
{