Date: Fri, 8 Mar 2019 06:47:53 +0000 (UTC) From: Antoine Brodin <antoine@FreeBSD.org> To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r495019 - in head/textproc: libxml2/files py-libxml2 Message-ID: <201903080647.x286lsJL075712@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: antoine Date: Fri Mar 8 06:47:53 2019 New Revision: 495019 URL: https://svnweb.freebsd.org/changeset/ports/495019 Log: Workaround https://bugzilla.gnome.org/show_bug.cgi?id=789714 PR: 234633 Obtained from: Fedora / openSuse Added: head/textproc/libxml2/files/patch-python_libxml.c (contents, props changed) Modified: head/textproc/py-libxml2/Makefile Added: head/textproc/libxml2/files/patch-python_libxml.c ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/textproc/libxml2/files/patch-python_libxml.c Fri Mar 8 06:47:53 2019 (r495019) @@ -0,0 +1,35 @@ +# Workaround https://bugzilla.gnome.org/show_bug.cgi?id=789714 +# Obtained from openSuse / Fedora + +--- python/libxml.c.orig 2016-06-07 10:04:14 UTC ++++ python/libxml.c +@@ -1620,6 +1620,7 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU + PyObject *message; + PyObject *result; + char str[1000]; ++ unsigned char *ptr = (unsigned char *)str; + + #ifdef DEBUG_ERROR + printf("libxml_xmlErrorFuncHandler(%p, %s, ...) called\n", ctx, msg); +@@ -1636,12 +1637,20 @@ libxml_xmlErrorFuncHandler(ATTRIBUTE_UNU + str[999] = 0; + va_end(ap); + ++#if PY_MAJOR_VERSION >= 3 ++ /* Ensure the error string doesn't start at UTF8 continuation. */ ++ while (*ptr && (*ptr & 0xc0) == 0x80) ++ ptr++; ++#endif ++ + list = PyTuple_New(2); + PyTuple_SetItem(list, 0, libxml_xmlPythonErrorFuncCtxt); + Py_XINCREF(libxml_xmlPythonErrorFuncCtxt); +- message = libxml_charPtrConstWrap(str); ++ message = libxml_charPtrConstWrap(ptr); + PyTuple_SetItem(list, 1, message); + result = PyEval_CallObject(libxml_xmlPythonErrorFuncHandler, list); ++ /* Forget any errors caused in the error handler. */ ++ PyErr_Clear(); + Py_XDECREF(list); + Py_XDECREF(result); + } Modified: head/textproc/py-libxml2/Makefile ============================================================================== --- head/textproc/py-libxml2/Makefile Fri Mar 8 06:46:27 2019 (r495018) +++ head/textproc/py-libxml2/Makefile Fri Mar 8 06:47:53 2019 (r495019) @@ -1,7 +1,7 @@ # Created by: Alexander Nedotsukov <bland@FreeBSD.org> # $FreeBSD$ -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= textproc gnome python PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201903080647.x286lsJL075712>