summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'mail-client/evolution')
-rw-r--r--mail-client/evolution/ChangeLog6
-rw-r--r--mail-client/evolution/evolution-2.32.3-r1.ebuild7
-rw-r--r--mail-client/evolution/files/evolution-2.32.3-libxml2-2.9.patch43
3 files changed, 53 insertions, 3 deletions
diff --git a/mail-client/evolution/ChangeLog b/mail-client/evolution/ChangeLog
index c68d6cc4305e..18834498e859 100644
--- a/mail-client/evolution/ChangeLog
+++ b/mail-client/evolution/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for mail-client/evolution
# Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/ChangeLog,v 1.386 2013/02/10 20:49:08 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/ChangeLog,v 1.387 2013/03/03 14:31:22 pacho Exp $
+
+ 03 Mar 2013; Pacho Ramos <pacho@gentoo.org>
+ +files/evolution-2.32.3-libxml2-2.9.patch, evolution-2.32.3-r1.ebuild:
+ Fix libxml2-2.9 compat (#459546 by jfernand)
10 Feb 2013; Alexandre Rostovtsev <tetromino@gentoo.org>
evolution-3.4.4.ebuild, evolution-3.6.2-r1.ebuild, evolution-3.6.3.ebuild,
diff --git a/mail-client/evolution/evolution-2.32.3-r1.ebuild b/mail-client/evolution/evolution-2.32.3-r1.ebuild
index 488ee2e96951..1a79630d57e3 100644
--- a/mail-client/evolution/evolution-2.32.3-r1.ebuild
+++ b/mail-client/evolution/evolution-2.32.3-r1.ebuild
@@ -1,6 +1,6 @@
-# Copyright 1999-2012 Gentoo Foundation
+# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/evolution-2.32.3-r1.ebuild,v 1.18 2012/12/24 04:37:08 tetromino Exp $
+# $Header: /var/cvsroot/gentoo-x86/mail-client/evolution/evolution-2.32.3-r1.ebuild,v 1.19 2013/03/03 14:31:22 pacho Exp $
EAPI="4"
GCONF_DEBUG="no"
@@ -157,6 +157,9 @@ src_prepare() {
epatch "${FILESDIR}/${P}-gmodule-explicit.patch"
epatch "${FILESDIR}/${P}-g_thread_init.patch"
+ # Support both old and new-buf libxml2 APIs, bug #459546
+ epatch "${FILESDIR}/${P}-libxml2-2.9.patch"
+
# Use NSS/NSPR only if 'ssl' is enabled.
if use ssl ; then
sed -e 's|mozilla-nss|nss|' \
diff --git a/mail-client/evolution/files/evolution-2.32.3-libxml2-2.9.patch b/mail-client/evolution/files/evolution-2.32.3-libxml2-2.9.patch
new file mode 100644
index 000000000000..57f833cc9cea
--- /dev/null
+++ b/mail-client/evolution/files/evolution-2.32.3-libxml2-2.9.patch
@@ -0,0 +1,43 @@
+--- plugins/caldav/caldav-browse-server.c.ori 2013-03-02 12:33:59.220751490 -0300
++++ plugins/caldav/caldav-browse-server.c 2013-03-02 16:47:55.601296985 -0300
+@@ -63,6 +63,18 @@
+
+ typedef void (*process_message_cb) (GObject *dialog, const gchar *msg_path, guint status_code, const gchar *msg_body, gpointer user_data);
+
++static gconstpointer
++compat_libxml_output_buffer_get_content (xmlOutputBufferPtr buf,
++ gsize *out_len)
++{
++#ifdef LIBXML2_NEW_BUFFER
++ *out_len = xmlOutputBufferGetSize (buf);
++ return xmlOutputBufferGetContent (buf);
++#else
++ *out_len = buf->buffer->use;
++ return buf->buffer->content;
++#endif
++}
+ static void send_xml_message (xmlDocPtr doc, gboolean depth_1, const gchar *url, GObject *dialog, process_message_cb cb, gpointer cb_user_data, const gchar *info);
+
+ static gchar *
+@@ -953,6 +965,8 @@
+ SoupSession *session;
+ SoupMessage *message;
+ xmlOutputBufferPtr buf;
++ gconstpointer content;
++ gsize length;
+ guint poll_id;
+ struct poll_data *pd;
+
+@@ -977,9 +991,11 @@
+ xmlNodeDumpOutput (buf, doc, xmlDocGetRootElement (doc), 0, 1, NULL);
+ xmlOutputBufferFlush (buf);
+
++ content = compat_libxml_output_buffer_get_content (buf, &length);
++
+ soup_message_headers_append (message->request_headers, "User-Agent", "Evolution/" VERSION);
+ soup_message_headers_append (message->request_headers, "Depth", depth_1 ? "1" : "0");
+- soup_message_set_request (message, "application/xml", SOUP_MEMORY_COPY, (const gchar *) buf->buffer->content, buf->buffer->use);
++ soup_message_set_request (message, "application/xml", SOUP_MEMORY_COPY, content, length);
+
+ /* Clean up the memory */
+ xmlOutputBufferClose (buf);