diff --git a/.gitignore b/.gitignore index f604503..a9e0040 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ libxml2-2.7.6.tar.gz +/libxml2-2.7.8.tar.gz diff --git a/libxml2-2.7.7-xpath-double-free.patch b/libxml2-2.7.7-xpath-double-free.patch new file mode 100644 index 0000000..c5dbbee --- /dev/null +++ b/libxml2-2.7.7-xpath-double-free.patch @@ -0,0 +1,22 @@ +--- a/xpath.c ++++ a/xpath.c +@@ -11763,11 +11763,16 @@ xmlXPathCompOpEvalPositionalPredicate(xmlXPathParserContextPtr ctxt, + + if ((ctxt->error != XPATH_EXPRESSION_OK) || (res == -1)) { + xmlXPathObjectPtr tmp; +- /* pop the result */ ++ /* pop the result if any */ + tmp = valuePop(ctxt); +- xmlXPathReleaseObject(xpctxt, tmp); +- /* then pop off contextObj, which will be freed later */ +- valuePop(ctxt); ++ if (tmp != contextObj) { ++ /* ++ * Free up the result ++ * then pop off contextObj, which will be freed later ++ */ ++ xmlXPathReleaseObject(xpctxt, tmp); ++ valuePop(ctxt); ++ } + goto evaluation_error; + } diff --git a/libxml2-gnome-bug-561340-fix.patch b/libxml2-gnome-bug-561340-fix.patch deleted file mode 100644 index 5c78f1b..0000000 --- a/libxml2-gnome-bug-561340-fix.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- include/libxml/xmlexports.h 2009-09-25 00:00:03.511532978 +0200 -+++ include/libxml/xmlexports.h 2009-09-25 00:01:27.058533091 +0200 -@@ -115,7 +115,7 @@ - */ - #if !defined(LIBXML_STATIC) - #define XMLPUBFUN __declspec(dllexport) -- #define XMLPUBVAR __declspec(dllexport) -+ #define XMLPUBVAR __declspec(dllexport) extern - #else - #define XMLPUBFUN - #if !defined(LIBXML_STATIC) diff --git a/mingw32-libxml2-2.7.2-with-modules.patch b/mingw32-libxml2-2.7.2-with-modules.patch deleted file mode 100644 index e26178c..0000000 --- a/mingw32-libxml2-2.7.2-with-modules.patch +++ /dev/null @@ -1,15 +0,0 @@ ---- libxml2-2.7.2/configure.in~ 2008-10-03 08:09:55.000000000 +0100 -+++ libxml2-2.7.2/configure.in 2008-10-25 23:14:18.000000000 +0100 -@@ -751,6 +751,12 @@ - AC_DEFINE([HAVE_DLOPEN], [], [Have dlopen based dso]) - ]) - ;; -+ *-*-mingw*) -+ # If I configured --with-modules then I damn well want -+ # modules and don't try to second-guess me. -+ MODULE_EXTENSION=".dll" -+ WITH_MODULES=1 -+ ;; - *) - AC_CHECK_FUNC(shl_load, libxml_have_shl_load=yes, [ - AC_CHECK_LIB(dld, shl_load, [ diff --git a/mingw32-libxml2.spec b/mingw32-libxml2.spec index 2974ad5..25353aa 100644 --- a/mingw32-libxml2.spec +++ b/mingw32-libxml2.spec @@ -6,8 +6,8 @@ %define __debug_install_post %{_mingw32_debug_install_post} Name: mingw32-libxml2 -Version: 2.7.6 -Release: 3%{?dist} +Version: 2.7.8 +Release: 1%{?dist} Summary: MinGW Windows libxml2 XML processing library License: MIT @@ -18,11 +18,10 @@ BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n) # Not required for MinGW. #Patch0: libxml2-multilib.patch +Patch2: libxml2-2.7.7-xpath-double-free.patch # MinGW-specific patches. -Patch1000: mingw32-libxml2-2.7.2-with-modules.patch Patch1001: mingw32-libxml2-static-build-compile-fix.patch -Patch1002: libxml2-gnome-bug-561340-fix.patch BuildArch: noarch @@ -35,8 +34,6 @@ BuildRequires: mingw32-gettext BuildRequires: mingw32-iconv BuildRequires: mingw32-zlib -BuildRequires: autoconf, automake, libtool - Requires: pkgconfig @@ -59,13 +56,8 @@ Static version of the MinGW Windows XML processing library. %prep %setup -q -n libxml2-%{version} -%patch1000 -p1 +%patch2 -p1 -b .CVE-2010-4494 %patch1001 -p0 -%patch1002 -p0 - -# Patched configure.in, so rebuild configure. -libtoolize --force --copy -autoreconf %build @@ -133,6 +125,11 @@ rm -rf $RPM_BUILD_ROOT %changelog +* Mon May 23 2011 Kalev Lember - 2.7.8-1 +- Update to 2.7.8 +- Dropped upstreamed patches +- Use the CVE-2010-4494 patch from Fedora native libxml2 (#665965) + * Mon May 23 2011 Kalev Lember - 2.7.6-3 - Don't install html documentation which duplicates what is in Fedora native diff --git a/sources b/sources index 6f53129..4e904ff 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -7740a8ec23878a2f50120e1faa2730f2 libxml2-2.7.6.tar.gz +8127a65e8c3b08856093099b52599c86 libxml2-2.7.8.tar.gz