diff options
author | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
---|---|---|
committer | Parabola <dev@list.parabolagnulinux.org> | 2011-04-05 14:26:38 +0000 |
commit | 415856bdd4f48ab4f2732996f0bae58595092bbe (patch) | |
tree | ede2018b591f6dfb477fe9341ba17b9bc000fab9 /extra/libwmf |
Tue Apr 5 14:26:38 UTC 2011
Diffstat (limited to 'extra/libwmf')
-rw-r--r-- | extra/libwmf/PKGBUILD | 41 | ||||
-rw-r--r-- | extra/libwmf/libpng14.patch | 12 | ||||
-rw-r--r-- | extra/libwmf/libwmf-0.2.8.4-useafterfree.patch | 10 | ||||
-rw-r--r-- | extra/libwmf/libwmf.install | 13 |
4 files changed, 76 insertions, 0 deletions
diff --git a/extra/libwmf/PKGBUILD b/extra/libwmf/PKGBUILD new file mode 100644 index 000000000..12061510c --- /dev/null +++ b/extra/libwmf/PKGBUILD @@ -0,0 +1,41 @@ +# $Id: PKGBUILD 87507 2010-08-15 06:45:18Z eric $ +# Maintainer: Jan de Groot <jgc@archlinux.org> +# Contributor: FJ <joostef@gmail.com> + +pkgname=libwmf +pkgver=0.2.8.4 +pkgrel=8 +pkgdesc="A library for reading vector images in Microsoft's native Windows Metafile Format (WMF)" +arch=('i686' 'x86_64') +url="http://wvware.sourceforge.net/libwmf.html" +license=("LGPL") +depends=('libpng' 'libx11' 'freetype2' 'libjpeg' 'gsfonts' 'expat') +makedepends=('gtk2' 'libxt' 'pkg-config') +options=('!libtool' '!docs' '!emptydirs') +install=libwmf.install +source=(http://downloads.sourceforge.net/sourceforge/wvware/${pkgname}-${pkgver}.tar.gz + libpng14.patch libwmf-0.2.8.4-useafterfree.patch) +md5sums=('d1177739bf1ceb07f57421f0cee191e0' '33d3c07a1be9f99fd88de220930c5550'\ + '0f02c1cb8a87bf7158634503bf0537e2') +sha1sums=('822ab3bd0f5e8f39ad732f2774a8e9f18fc91e89' '15edb94eec7c9cea988e83660b334e56bf1fe897'\ + 'ea6d28880840e86c96f9079bfd591da54dcffa5c') + +build() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i "${srcdir}/libpng14.patch" + patch -Np1 -i "${srcdir}/libwmf-0.2.8.4-useafterfree.patch" + ./configure --prefix=/usr \ + --with-gsfontdir=/usr/share/fonts/Type1 \ + --with-fontdir=/usr/share/fonts/Type1 \ + --with-gsfontmap=/usr/share/ghostscript/8.15/lib/Fontmap.GS + make +} + +package() { + cd "${srcdir}/${pkgname}-${pkgver}" + make DESTDIR="${pkgdir}" install + #Remove fonts, these are in gsfonts + rm -rf "${pkgdir}/usr/share/fonts" + #Remove static GTK loader, can't use it anyways + rm -f "${pkgdir}"/usr/lib/gtk-2.0/*/loaders/io-wmf.a +} diff --git a/extra/libwmf/libpng14.patch b/extra/libwmf/libpng14.patch new file mode 100644 index 000000000..3d38c717a --- /dev/null +++ b/extra/libwmf/libpng14.patch @@ -0,0 +1,12 @@ +diff -Nur libwmf-0.2.8.4.orig/src/extra/gd/gd_png.c libwmf-0.2.8.4/src/extra/gd/gd_png.c +--- libwmf-0.2.8.4.orig/src/extra/gd/gd_png.c 2005-07-27 23:35:06.000000000 +0300 ++++ libwmf-0.2.8.4/src/extra/gd/gd_png.c 2010-01-17 01:33:58.000000000 +0200 +@@ -136,7 +136,7 @@ + /* first do a quick check that the file really is a PNG image; could + * have used slightly more general png_sig_cmp() function instead */ + gdGetBuf (sig, 8, infile); +- if (!png_check_sig (sig, 8)) ++ if (png_sig_cmp (sig, 0, 8)) + return NULL; /* bad signature */ + + #ifndef PNG_SETJMP_NOT_SUPPORTED diff --git a/extra/libwmf/libwmf-0.2.8.4-useafterfree.patch b/extra/libwmf/libwmf-0.2.8.4-useafterfree.patch new file mode 100644 index 000000000..328c5411f --- /dev/null +++ b/extra/libwmf/libwmf-0.2.8.4-useafterfree.patch @@ -0,0 +1,10 @@ +--- libwmf-0.2.8.4/src/extra/gd/gd_clip.c.CVE-2009-1364-im-clip-list 2009-04-24 04:06:44.000000000 -0400 ++++ libwmf-0.2.8.4/src/extra/gd/gd_clip.c 2009-04-24 04:08:30.000000000 -0400 +@@ -70,6 +70,7 @@ void gdClipSetAdd(gdImagePtr im,gdClipRe + { more = gdRealloc (im->clip->list,(im->clip->max + 8) * sizeof (gdClipRectangle)); + if (more == 0) return; + im->clip->max += 8; ++ im->clip->list = more; + } + im->clip->list[im->clip->count] = (*rect); + im->clip->count++; diff --git a/extra/libwmf/libwmf.install b/extra/libwmf/libwmf.install new file mode 100644 index 000000000..9c99a901b --- /dev/null +++ b/extra/libwmf/libwmf.install @@ -0,0 +1,13 @@ +post_install() { + if [ -x usr/bin/gdk-pixbuf-query-loaders ]; then + gdk-pixbuf-query-loaders > etc/gtk-2.0/gdk-pixbuf.loaders + fi +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} |