[arch-commits] Commit in libgdiplus/trunk (PKGBUILD libgdiplus0-giflib5.patch)
Daniel Isenmann
daniel at archlinux.org
Sun Sep 28 17:42:32 UTC 2014
Date: Sunday, September 28, 2014 @ 19:42:32
Author: daniel
Revision: 223662
upgpkg: libgdiplus 3.8-1
New upstream release
Modified:
libgdiplus/trunk/PKGBUILD
libgdiplus/trunk/libgdiplus0-giflib5.patch
---------------------------+
PKGBUILD | 24 ++++-------------
libgdiplus0-giflib5.patch | 60 +++++++++++++++++++++++++++++++++++---------
2 files changed, 54 insertions(+), 30 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2014-09-28 17:38:16 UTC (rev 223661)
+++ PKGBUILD 2014-09-28 17:42:32 UTC (rev 223662)
@@ -2,33 +2,21 @@
# Maintainer: Daniel Isenmann <daniel at archlinux.org>
pkgname=libgdiplus
-pkgver=2.10.9
-pkgrel=5
+pkgver=3.8
+pkgrel=1
pkgdesc="An Open Source Implementation of the GDI+ API"
arch=(i686 x86_64)
license=('MPL' 'LGPL')
url="http://www.mono-project.com"
depends=('libtiff' 'cairo' 'giflib' 'glib2' 'libexif')
-source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.bz2
- libpng15.patch
- libgdiplus0-giflib5.patch
- libgdiplus-2.10.9-gold.patch
- libgdiplus-2.10.9-freetype25.patch
- libgdiplus-2.10.9-giflib-5.1.0.patch)
-md5sums=('b4615c14584b5d73cbb9757c28887654'
- 'a2d143676bbaceeb88b4c34069e93986'
- 'ad97558c721106eea03c7808b501814b'
- '95fb92750c131ce9287419c3ac5fcb76'
- '6ee484dde02ea89aded1287c0a8d4bad'
- '8c0a975b12a011b21e4216c44be1416e')
+source=(http://download.mono-project.com/sources/${pkgname}/${pkgname}-${pkgver}.tar.gz
+ libgdiplus0-giflib5.patch)
+md5sums=('e75440257b006d7fc2c39e9c56022c4e'
+ 'a2db6fbb81b1367b3d45eaff674c00a5')
prepare() {
cd ${pkgname}-${pkgver}
- patch -Np0 -i ../libpng15.patch
patch -Np1 -i ../libgdiplus0-giflib5.patch
- patch -Np1 -i ../libgdiplus-2.10.9-gold.patch
- patch -Np1 -i ../libgdiplus-2.10.9-freetype25.patch
- patch -Np1 -i ../libgdiplus-2.10.9-giflib-5.1.0.patch
sed -i -e 's/-L\${libjpeg_prefix}\/lib -ljpeg/-ljpeg/' configure
}
Modified: libgdiplus0-giflib5.patch
===================================================================
--- libgdiplus0-giflib5.patch 2014-09-28 17:38:16 UTC (rev 223661)
+++ libgdiplus0-giflib5.patch 2014-09-28 17:42:32 UTC (rev 223662)
@@ -1,19 +1,28 @@
-diff --git a/src/gifcodec.c b/src/gifcodec.c
-index 8dee0eb..564beed 100644
---- a/src/gifcodec.c
-+++ b/src/gifcodec.c
-@@ -39,8 +39,10 @@ GUID gdip_gif_image_format_guid = {0xb96b3cb0U, 0x0728U, 0x11d3U, {0x9d, 0x7b, 0
+---
+ src/gifcodec.c | 50 +++++++++++++++++++++++++++++++++++++++++---------
+ 1 file changed, 41 insertions(+), 9 deletions(-)
+
+Index: libgdiplus-2.10.9/src/gifcodec.c
+===================================================================
+--- libgdiplus-2.10.9.orig/src/gifcodec.c
++++ libgdiplus-2.10.9/src/gifcodec.c
+@@ -39,8 +39,15 @@ GUID gdip_gif_image_format_guid = {0xb96
#include "gifcodec.h"
-+#if GIFLIB_MAJOR < 5
++#if !defined(GIFLIB_MAJOR) || GIFLIB_MAJOR < 5
/* giflib declares this incorrectly as EgifOpen */
extern GifFileType *EGifOpen(void *userData, OutputFunc writeFunc);
+#endif
++#if !defined(GIFLIB_MAJOR) || !(GIFLIB_MAJOR > 5 || \
++ (GIFLIB_MAJOR == 5 && GIFLIB_MINOR >= 1))
++# define DGifCloseFile(a, b) DGifCloseFile(a)
++# define EGifCloseFile(a, b) EGifCloseFile(a)
++#endif
/* Data structure used for callback */
typedef struct
-@@ -105,7 +107,7 @@ gdip_gif_inputfunc (GifFileType *gif, GifByteType *data, int len)
+@@ -105,7 +112,7 @@ gdip_gif_inputfunc (GifFileType *gif, Gi
*/
static int
@@ -22,7 +31,7 @@
{
ExtensionBlock *ep;
-@@ -129,7 +131,7 @@ AddExtensionBlockMono(SavedImage *New, int Len, BYTE ExtData[])
+@@ -129,7 +136,7 @@ AddExtensionBlockMono(SavedImage *New, i
if (ExtData) {
memcpy(ep->Bytes, ExtData, Len);
@@ -31,7 +40,7 @@
}
return (GIF_OK);
-@@ -232,20 +234,20 @@ DGifSlurpMono(GifFileType * GifFile, SavedImage *TrailingExtensions)
+@@ -232,20 +239,20 @@ DGifSlurpMono(GifFileType * GifFile, Sav
}
case EXTENSION_RECORD_TYPE: {
@@ -55,7 +64,7 @@
}
break;
}
-@@ -303,12 +305,19 @@ gdip_load_gif_image (void *stream, GpImage **image, BOOL from_file)
+@@ -303,12 +310,19 @@ gdip_load_gif_image (void *stream, GpIma
result = NULL;
loop_counter = FALSE;
@@ -76,7 +85,25 @@
if (gif == NULL) {
goto error;
}
-@@ -660,11 +669,22 @@ gdip_save_gif_image (void *stream, GpImage *image, BOOL from_file)
+@@ -581,7 +595,7 @@ gdip_load_gif_image (void *stream, GpIma
+ }
+
+ FreeExtensionMono(&global_extensions);
+- DGifCloseFile (gif);
++ DGifCloseFile (gif, NULL);
+
+ *image = result;
+ return Ok;
+@@ -597,7 +611,7 @@ error:
+
+ if (gif != NULL) {
+ FreeExtensionMono (&global_extensions);
+- DGifCloseFile (gif);
++ DGifCloseFile (gif, NULL);
+ }
+
+ *image = NULL;
+@@ -660,11 +674,22 @@ gdip_save_gif_image (void *stream, GpIma
return InvalidParameter;
}
@@ -99,7 +126,7 @@
if (!fp) {
return FileNotFound;
-@@ -848,8 +868,15 @@ gdip_save_gif_image (void *stream, GpImage *image, BOOL from_file)
+@@ -848,8 +873,15 @@ gdip_save_gif_image (void *stream, GpIma
Buffer[0] = 1;
Buffer[1] = ptr[0];
Buffer[2] = ptr[1];
@@ -115,3 +142,12 @@
}
}
+@@ -923,7 +955,7 @@ gdip_save_gif_image (void *stream, GpIma
+ }
+ }
+
+- EGifCloseFile (fp);
++ EGifCloseFile (fp, NULL);
+
+ return Ok;
+
More information about the arch-commits
mailing list