#include <glib/gi18n-lib.h>
#include <dbus/dbus-protocol.h>
#include <math.h>
+#include <telepathy-glib/telepathy-glib-dbus.h>
#include "empathy-client-factory.h"
#include "extensions.h"
g_object_unref (am);
}
-gboolean
-empathy_xml_validate_from_resource (xmlDoc *doc,
- const gchar *dtd_resourcename)
-{
- GBytes *resourcecontents;
- gconstpointer resourcedata;
- gsize resourcesize;
- xmlParserInputBufferPtr buffer;
- xmlValidCtxt cvp;
- xmlDtd *dtd;
- GError *error = NULL;
- gboolean ret;
-
- DEBUG ("Loading dtd resource %s", dtd_resourcename);
-
- resourcecontents = g_resources_lookup_data (dtd_resourcename, G_RESOURCE_LOOKUP_FLAGS_NONE, &error);
- if (error != NULL)
- {
- g_warning ("Unable to load dtd resource '%s': %s", dtd_resourcename, error->message);
- g_error_free (error);
- return FALSE;
- }
- resourcedata = g_bytes_get_data (resourcecontents, &resourcesize);
- buffer = xmlParserInputBufferCreateStatic (resourcedata, resourcesize, XML_CHAR_ENCODING_UTF8);
-
- memset (&cvp, 0, sizeof (cvp));
- dtd = xmlIOParseDTD (NULL, buffer, XML_CHAR_ENCODING_UTF8);
- ret = xmlValidateDtd (&cvp, doc, dtd);
-
- xmlFreeDtd (dtd);
- g_bytes_unref (resourcecontents);
-
- return ret;
-}
-
xmlNodePtr
empathy_xml_node_get_child (xmlNodePtr node,
const gchar *child_name)
manager = tp_account_manager_dup ();
- if (G_UNLIKELY (!tp_account_manager_is_prepared (manager,
+ if (G_UNLIKELY (!tp_proxy_is_prepared (manager,
TP_ACCOUNT_MANAGER_FEATURE_CORE)))
g_critical (G_STRLOC ": %s called before AccountManager ready", G_STRFUNC);
account = tpf_persona_store_get_account (persona_store);
conn_cur = tp_account_get_connection (account);
if (conn_cur == connection)
- result = persona_store;
+ result = g_object_ref (persona_store);
+
+ g_clear_object (&persona_store);
}
g_clear_object (&iter);
}
return individual;
}
-FolksIndividual *
-empathy_create_individual_from_tp_contact (TpContact *contact)
-{
- TpfPersona *persona;
- FolksIndividual *individual;
-
- persona = tpf_persona_dup_for_contact (contact);
- if (persona == NULL)
- {
- DEBUG ("Failed to get a persona for %s",
- tp_contact_get_identifier (contact));
- return NULL;
- }
-
- individual = create_individual_from_persona (FOLKS_PERSONA (persona));
-
- g_object_unref (persona);
- return individual;
-}
-
/* Look for a FolksIndividual containing @contact as one of his persona
* and create one if needed */
FolksIndividual *