Go to:
Gentoo Home
Documentation
Forums
Lists
Bugs
Planet
Store
Wiki
Get Gentoo!
Gentoo's Bugzilla – Attachment 395648 Details for
Bug 538976
media-libs/imlib-1.9.15-r4 with media-libs/giflib-5.1.1 - .../src/modules/loaders/loader_gif.c:68:19: error: too few arguments to function ‘DGifCloseFile’
Home
|
New
–
[Ex]
|
Browse
|
Search
|
Privacy Policy
|
[?]
|
Reports
|
Requests
|
Help
|
New Account
|
Log In
[x]
|
Forgot Password
Login:
[x]
[patch]
Support for giflib 5.0
imlib-giflib5.patch (text/plain), 3.21 KB, created by
Andrew John Hughes
on 2015-02-05 21:01:52 UTC
(
hide
)
Description:
Support for giflib 5.0
Filename:
MIME Type:
Creator:
Andrew John Hughes
Created:
2015-02-05 21:01:52 UTC
Size:
3.21 KB
patch
obsolete
>diff -Nru imlib-1.9.15.old/gdk_imlib/io-gif.c imlib-1.9.15/gdk_imlib/io-gif.c >--- imlib-1.9.15.old/gdk_imlib/io-gif.c 2014-05-28 13:54:48.860293627 +0100 >+++ imlib-1.9.15/gdk_imlib/io-gif.c 2014-05-28 13:58:29.992185729 +0100 >@@ -1,8 +1,10 @@ > #include <config.h> > #include "gdk_imlib.h" > #include "gdk_imlib_private.h" >+#include <gifutil.h> > > #ifndef HAVE_LIBGIF >+/*------------------------*/ > unsigned char loader_gif (FILE *f, int *w, int *h, int *t) > { > return NULL; >@@ -43,14 +45,14 @@ > { > if (DGifGetRecordType(gif, &rec) == GIF_ERROR) > { >- PrintGifError(); >+ _PrintGifError(gif); > rec = TERMINATE_RECORD_TYPE; > } > if ((rec == IMAGE_DESC_RECORD_TYPE) && (!done)) > { > if (DGifGetImageDesc(gif) == GIF_ERROR) > { >- PrintGifError(); >+ _PrintGifError(gif); > rec = TERMINATE_RECORD_TYPE; > } > *w = gif->Image.Width; >diff -Nru imlib-1.9.15.old/gifutil.h imlib-1.9.15/gifutil.h >--- imlib-1.9.15.old/gifutil.h 1970-01-01 01:00:00.000000000 +0100 >+++ imlib-1.9.15/gifutil.h 2014-05-28 13:57:45.019424755 +0100 >@@ -0,0 +1,26 @@ >+#ifndef __GIFUTIL_H__ >+#define __GIFUTIL_H__ >+ >+static void >+_PrintGifError(GifFileType *gif) >+{ >+ /* GIFLIB_MAJOR is only defined in libgif >= 4.2.0 */ >+ /* libgif 4.2.0 has retired PrintGifError() and added GifErrorString() */ >+#if defined(GIFLIB_MAJOR) && defined(GIFLIB_MINOR) && \ >+ ((GIFLIB_MAJOR == 4 && GIFLIB_MINOR >= 2) || GIFLIB_MAJOR > 4) >+ /* Static string actually, hence the const char* cast */ >+ >+#if GIFLIB_MAJOR >= 5 >+ const char* gifliberr = (const char*) GifErrorString(gif->Error); >+#else >+ const char* gifliberr = (const char*) GifErrorString(); >+#endif >+ if (gifliberr == NULL) >+ gifliberr = "Unknown error"; >+ fprintf(stderr, "%s\n", gifliberr); >+#else >+ PrintGifError(); >+#endif >+} >+ >+#endif >diff -Nru imlib-1.9.15.old/Imlib/load.c imlib-1.9.15/Imlib/load.c >--- imlib-1.9.15.old/Imlib/load.c 2014-05-28 13:54:49.008295568 +0100 >+++ imlib-1.9.15/Imlib/load.c 2014-05-28 14:00:21.321983945 +0100 >@@ -3,6 +3,7 @@ > #include "Imlib.h" > #include "Imlib_private.h" > #include <setjmp.h> >+#include <gifutil.h> > > #define G_MAXINT ((int) 0x7fffffff) > >@@ -431,6 +432,8 @@ > #endif /* HAVE_LIBTIFF */ > > #ifdef HAVE_LIBGIF >+/*------------------------*/ >+/*------------------------*/ > unsigned char * > _LoadGIF(ImlibData * id, FILE *f, int *w, int *h, int *t) > { >@@ -454,22 +457,38 @@ > fd = fileno(f); > /* Apparently rewind(f) isn't sufficient */ > lseek(fd, (long) 0, 0); >+ >+#if GIFLIB_MAJOR >= 5 >+ int errCode = 0; >+ >+ gif = DGifOpenFileHandle(fd, &errCode); >+ if (!gif) >+ { >+ const char* gifliberr = (const char*) GifErrorString(errCode); >+ if (gifliberr == NULL) >+ gifliberr = "Unknown error"; >+ fprintf(stderr, "%s\n", gifliberr); >+ return NULL; >+ } >+#else > gif = DGifOpenFileHandle(fd); > > if (!gif) > return NULL; >+#endif >+ > do > { > if (DGifGetRecordType(gif, &rec) == GIF_ERROR) > { >- PrintGifError(); >+ _PrintGifError(gif); > rec = TERMINATE_RECORD_TYPE; > } > if ((rec == IMAGE_DESC_RECORD_TYPE) && (!done)) > { > if (DGifGetImageDesc(gif) == GIF_ERROR) > { >- PrintGifError(); >+ _PrintGifError(gif); > rec = TERMINATE_RECORD_TYPE; > } > *w = gif->Image.Width;
You cannot view the attachment while viewing its details because your browser does not support IFRAMEs.
View the attachment on a separate page
.
View Attachment As Diff
View Attachment As Raw
Actions:
View
|
Diff
Attachments on
bug 538976
: 395648 |
395650
|
395652