diff options
author | Michał Masłowski <mtjm@mtjm.eu> | 2013-08-03 17:45:52 +0200 |
---|---|---|
committer | Michał Masłowski <mtjm@mtjm.eu> | 2013-08-03 17:45:52 +0200 |
commit | 513c776d74c56a49781a09a5a772f4ea6d6bb401 (patch) | |
tree | 161509e3271db459f14f8c69de7c52d4902ba107 /extra/libgdiplus/libgdiplus0-giflib5.patch | |
parent | 8183144fe6e064d80985ac810f6178a3cf289d0d (diff) | |
parent | e191a289464c21aafe7478065ea7ed3ddda0766f (diff) |
Merge branch 'master' of ssh://parabolagnulinux.org:1863/home/parabola/abslibre-pre-mips64el
Conflicts:
community/arm-elf-binutils/PKGBUILD
community/bird/PKGBUILD
community/cantata/PKGBUILD
community/dbmail/PKGBUILD
community/ekg2/PKGBUILD
community/ffmpeg-compat/PKGBUILD
community/gigedit/PKGBUILD
community/gimp-refocus/PKGBUILD
community/gmime24/PKGBUILD
community/gmpc/PKGBUILD
community/gnash/PKGBUILD
community/id3lib-rcc/PKGBUILD
community/linuxsampler/PKGBUILD
community/lwm/PKGBUILD
community/midori/PKGBUILD
community/mplayer2/PKGBUILD
community/mtpaint/PKGBUILD
community/nestopia/PKGBUILD
community/preload/PKGBUILD
community/projectm/PKGBUILD
community/rusxmms/PKGBUILD
community/taglib-rcc/PKGBUILD
community/the_silver_searcher/PKGBUILD
community/xnee/PKGBUILD
core/libgcrypt/PKGBUILD
core/libusbx/PKGBUILD
core/mkinitcpio-busybox/PKGBUILD
extra/a2ps/PKGBUILD
extra/a52dec/PKGBUILD
extra/abook/PKGBUILD
extra/avidemux/PKGBUILD
extra/bzflag/PKGBUILD
extra/cln/PKGBUILD
extra/exempi/PKGBUILD
extra/ffmpeg/PKGBUILD
extra/fluxter/PKGBUILD
extra/fontforge/PKGBUILD
extra/glib/PKGBUILD
extra/gnet/PKGBUILD
extra/gnome-vfs/PKGBUILD
extra/gnutls/PKGBUILD
extra/gstreamer0.10-ugly/PKGBUILD
extra/gtk/PKGBUILD
extra/idnkit/PKGBUILD
extra/ilmbase/PKGBUILD
extra/imake/PKGBUILD
extra/kdenetwork/PKGBUILD
extra/libdatrie/PKGBUILD
extra/libmbim/PKGBUILD
extra/libmp3splt/PKGBUILD
extra/libqmi/PKGBUILD
extra/libtxc_dxtn/PKGBUILD
extra/libxfont/PKGBUILD
extra/mesa/PKGBUILD
extra/modemmanager/PKGBUILD
extra/nedit/PKGBUILD
extra/nmap/PKGBUILD
extra/openexr/PKGBUILD
extra/purple-plugin-pack/PKGBUILD
extra/qemu/PKGBUILD
extra/qtwebkit/PKGBUILD
extra/subversion/PKGBUILD
extra/transmission/PKGBUILD
extra/truecrypt/PKGBUILD
extra/vigra/PKGBUILD
extra/virtuoso/PKGBUILD
extra/vlc/PKGBUILD
extra/wireshark/PKGBUILD
extra/wxmaxima/PKGBUILD
extra/x264/PKGBUILD
extra/xorg-iceauth/PKGBUILD
extra/xorg-mkfontscale/PKGBUILD
extra/xorg-xfd/PKGBUILD
libre/abuse-libre/PKGBUILD
libre/clementine-libre/PKGBUILD
libre/linux-libre/PKGBUILD
Diffstat (limited to 'extra/libgdiplus/libgdiplus0-giflib5.patch')
-rw-r--r-- | extra/libgdiplus/libgdiplus0-giflib5.patch | 117 |
1 files changed, 117 insertions, 0 deletions
diff --git a/extra/libgdiplus/libgdiplus0-giflib5.patch b/extra/libgdiplus/libgdiplus0-giflib5.patch new file mode 100644 index 000000000..36d2bf836 --- /dev/null +++ b/extra/libgdiplus/libgdiplus0-giflib5.patch @@ -0,0 +1,117 @@ +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 + + #include "gifcodec.h" + ++#if GIFLIB_MAJOR < 5 + /* giflib declares this incorrectly as EgifOpen */ + extern GifFileType *EGifOpen(void *userData, OutputFunc writeFunc); ++#endif + + /* Data structure used for callback */ + typedef struct +@@ -105,7 +107,7 @@ gdip_gif_inputfunc (GifFileType *gif, GifByteType *data, int len) + */ + + static int +-AddExtensionBlockMono(SavedImage *New, int Len, BYTE ExtData[]) ++AddExtensionBlockMono(SavedImage *New, int Len, int func, BYTE ExtData[]) + { + ExtensionBlock *ep; + +@@ -129,7 +131,7 @@ AddExtensionBlockMono(SavedImage *New, int Len, BYTE ExtData[]) + + if (ExtData) { + memcpy(ep->Bytes, ExtData, Len); +- ep->Function = New->Function; ++ ep->Function = func; + } + + return (GIF_OK); +@@ -232,20 +234,20 @@ DGifSlurpMono(GifFileType * GifFile, SavedImage *TrailingExtensions) + } + + case EXTENSION_RECORD_TYPE: { +- if (DGifGetExtension(GifFile, &temp_save.Function, &ExtData) == GIF_ERROR) { ++ int func; ++ if (DGifGetExtension(GifFile, &func, &ExtData) == GIF_ERROR) { + return (GIF_ERROR); + } + + while (ExtData != NULL) { + /* Create an extension block with our data */ +- if (AddExtensionBlockMono(&temp_save, ExtData[0], &ExtData[1]) == GIF_ERROR) { ++ if (AddExtensionBlockMono(&temp_save, func, ExtData[0], &ExtData[1]) == GIF_ERROR) { + return (GIF_ERROR); + } + + if (DGifGetExtensionNext(GifFile, &ExtData) == GIF_ERROR) { + return (GIF_ERROR); + } +- temp_save.Function = 0; + } + break; + } +@@ -303,12 +305,19 @@ gdip_load_gif_image (void *stream, GpImage **image, BOOL from_file) + result = NULL; + loop_counter = FALSE; + ++#if GIFLIB_MAJOR < 5 + if (from_file) { + gif = DGifOpen(stream, &gdip_gif_fileinputfunc); + } else { + gif = DGifOpen (stream, &gdip_gif_inputfunc); + } +- ++#else ++ if (from_file) ++ gif = DGifOpen(stream, &gdip_gif_fileinputfunc, NULL); ++ else ++ gif = DGifOpen(stream, &gdip_gif_inputfunc, NULL); ++#endif ++ + if (gif == NULL) { + goto error; + } +@@ -660,11 +669,22 @@ gdip_save_gif_image (void *stream, GpImage *image, BOOL from_file) + return InvalidParameter; + } + ++#if GIFLIB_MAJOR < 5 + if (from_file) { + fp = EGifOpenFileName (stream, 0); + } else { + fp = EGifOpen (stream, gdip_gif_outputfunc); + } ++#else ++ if (from_file) ++ fp = EGifOpenFileName (stream, 0, NULL); ++ else ++ fp = EGifOpen (stream, gdip_gif_outputfunc, NULL); ++#define MakeMapObject GifMakeMapObject ++#define FreeMapObject GifFreeMapObject ++#define QuantizeBuffer GifQuantizeBuffer ++#define BitSize GifBitSize ++#endif + + if (!fp) { + return FileNotFound; +@@ -848,8 +868,15 @@ gdip_save_gif_image (void *stream, GpImage *image, BOOL from_file) + Buffer[0] = 1; + Buffer[1] = ptr[0]; + Buffer[2] = ptr[1]; ++#if GIFLIB_MAJOR < 5 + EGifPutExtensionFirst(fp, APPLICATION_EXT_FUNC_CODE, 11, "NETSCAPE2.0"); + EGifPutExtensionLast(fp, APPLICATION_EXT_FUNC_CODE, 3, Buffer); ++#else ++ EGifPutExtensionLeader(fp, APPLICATION_EXT_FUNC_CODE); ++ EGifPutExtensionBlock(fp, 11, "NETSCAPE2.0"); ++ EGifPutExtensionBlock(fp, 3, Buffer); ++ EGifPutExtensionTrailer(fp); ++#endif + } + } + |