Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
View | Details | Raw Unified | Return to bug 486372 | Differences between
and this patch

Collapse All | Expand All

(-)imlib-1.9.15.orig/Imlib/load.c (-2 / +23 lines)
Lines 431-436 _LoadTIFF(ImlibData * id, FILE *f, char Link Here
431
#endif /* HAVE_LIBTIFF */
431
#endif /* HAVE_LIBTIFF */
432
432
433
#ifdef HAVE_LIBGIF
433
#ifdef HAVE_LIBGIF
434
435
  // on giflib-4.2+, PrintGifError is gone and GifErrorString is in
436
  #ifdef HAVE_GIF_ERROR_STRING
437
    #if (GIFLIB_MAJOR >= 5)
438
      #define GifError() (gif ? gif->Error : 0)
439
      #define myGifErrorString() GifErrorString(GifError())
440
    #else
441
      #define myGifErrorString() GifErrorString()
442
    #endif
443
    #define myPrintGifError() \
444
    do { \
445
      const char* errorString = myGifErrorString(); \
446
      if (errorString != NULL) \
447
        fprintf(stderr, "giflib: error: %s\n", errorString); \
448
      else \
449
        fprintf(stderr, "giflib: error (undefined): %d\n", GifError()); \
450
    } while (0)
451
  #else
452
    #define myPrintGifError() PrintGifError()
453
  #endif
454
434
unsigned char      *
455
unsigned char      *
435
_LoadGIF(ImlibData * id, FILE *f, int *w, int *h, int *t)
456
_LoadGIF(ImlibData * id, FILE *f, int *w, int *h, int *t)
436
{
457
{
Lines 466-479 _LoadGIF(ImlibData * id, FILE *f, int *w Link Here
466
    {
482
    {
467
      if (DGifGetRecordType(gif, &rec) == GIF_ERROR)
483
      if (DGifGetRecordType(gif, &rec) == GIF_ERROR)
468
	{
484
	{
469
	  PrintGifError();
485
	  myPrintGifError();
470
	  rec = TERMINATE_RECORD_TYPE;
486
	  rec = TERMINATE_RECORD_TYPE;
471
	}
487
	}
472
      if ((rec == IMAGE_DESC_RECORD_TYPE) && (!done))
488
      if ((rec == IMAGE_DESC_RECORD_TYPE) && (!done))
473
	{
489
	{
474
	  if (DGifGetImageDesc(gif) == GIF_ERROR)
490
	  if (DGifGetImageDesc(gif) == GIF_ERROR)
475
	    {
491
	    {
476
	      PrintGifError();
492
	      myPrintGifError();
477
	      rec = TERMINATE_RECORD_TYPE;
493
	      rec = TERMINATE_RECORD_TYPE;
478
	    }
494
	    }
479
	  *w = gif->Image.Width;
495
	  *w = gif->Image.Width;
(-)imlib-1.9.15.orig/gdk_imlib/io-gif.c (-2 / +23 lines)
Lines 10-15 unsigned char loader_gif (FILE *f, int * Link Here
10
#else
10
#else
11
#include <gif_lib.h>
11
#include <gif_lib.h>
12
12
13
14
  // on giflib-4.2+, PrintGifError is gone and GifErrorString is in
15
  #ifdef HAVE_GIF_ERROR_STRING
16
    #if (GIFLIB_MAJOR >= 5)
17
      #define GifError() (gif ? gif->Error : 0)
18
      #define myGifErrorString() GifErrorString(GifError())
19
    #else
20
      #define myGifErrorString() GifErrorString()
21
    #endif
22
    #define myPrintGifError() \
23
    do { \
24
      const char* errorString = myGifErrorString(); \
25
      if (errorString != NULL) \
26
        fprintf(stderr, "giflib: error: %s\n", errorString); \
27
      else \
28
        fprintf(stderr, "giflib: error (undefined): %d\n", GifError()); \
29
    } while (0)
30
  #else
31
    #define myPrintGifError() PrintGifError()
32
  #endif
33
13
unsigned char      *
34
unsigned char      *
14
loader_gif(FILE *f, int *w, int *h, int *t)
35
loader_gif(FILE *f, int *w, int *h, int *t)
15
{
36
{
Lines 47-60 loader_gif(FILE *f, int *w, int *h, int Link Here
47
    {
62
    {
48
      if (DGifGetRecordType(gif, &rec) == GIF_ERROR)
63
      if (DGifGetRecordType(gif, &rec) == GIF_ERROR)
49
	{
64
	{
50
	  PrintGifError();
65
	  myPrintGifError();
51
	  rec = TERMINATE_RECORD_TYPE;
66
	  rec = TERMINATE_RECORD_TYPE;
52
	}
67
	}
53
      if ((rec == IMAGE_DESC_RECORD_TYPE) && (!done))
68
      if ((rec == IMAGE_DESC_RECORD_TYPE) && (!done))
54
	{
69
	{
55
	  if (DGifGetImageDesc(gif) == GIF_ERROR)
70
	  if (DGifGetImageDesc(gif) == GIF_ERROR)
56
	    {
71
	    {
57
	      PrintGifError();
72
	      myPrintGifError();
58
	      rec = TERMINATE_RECORD_TYPE;
73
	      rec = TERMINATE_RECORD_TYPE;
59
	    }
74
	    }
60
	  *w = gif->Image.Width;
75
	  *w = gif->Image.Width;
(-)imlib-1.9.15.orig/config.h.in (+3 lines)
Lines 29-34 Link Here
29
#undef HAVE_LIBGIF
29
#undef HAVE_LIBGIF
30
30
31
/* */
31
/* */
32
#undef HAVE_GIF_ERROR_STRING
33
34
/* */
32
#undef HAVE_LIBJPEG
35
#undef HAVE_LIBJPEG
33
36
34
/* */
37
/* */
(-)imlib-1.9.15.orig/configure.in (-1 / +6 lines)
Lines 253-262 AC_CHECK_LIB(tiff, TIFFReadScanline, Link Here
253
AC_CHECK_HEADER(gif_lib.h,
253
AC_CHECK_HEADER(gif_lib.h,
254
  [AC_CHECK_LIB(ungif, DGifOpenFileName,
254
  [AC_CHECK_LIB(ungif, DGifOpenFileName,
255
    [GIFLIBS="-lungif"
255
    [GIFLIBS="-lungif"
256
     SUPPORT_LIBS="$SUPPORT_LIBS -lungif"; AC_DEFINE(HAVE_LIBGIF, 1, [ ])],
256
     SUPPORT_LIBS="$SUPPORT_LIBS -lungif"
257
     AC_CHECK_LIB(ungif, GifErrorString,
258
	[AC_DEFINE(HAVE_GIF_ERROR_STRING, 1, [ ])])
259
     AC_DEFINE(HAVE_LIBGIF, 1, [ ])],
257
    [AC_CHECK_LIB(gif, DGifOpenFileName,
260
    [AC_CHECK_LIB(gif, DGifOpenFileName,
258
      [GIFLIBS="-lgif"
261
      [GIFLIBS="-lgif"
259
      SUPPORT_LIBS="$SUPPORT_LIBS -lgif"
262
      SUPPORT_LIBS="$SUPPORT_LIBS -lgif"
263
       AC_CHECK_LIB(gif, GifErrorString,
264
         [AC_DEFINE(HAVE_GIF_ERROR_STRING, 1, [ ])])
260
       AC_DEFINE(HAVE_LIBGIF, 1, [ ])],
265
       AC_DEFINE(HAVE_LIBGIF, 1, [ ])],
261
      [AC_MSG_ERROR(*** GIF library file not found ***)], 
266
      [AC_MSG_ERROR(*** GIF library file not found ***)], 
262
      $GX_LIBS)],
267
      $GX_LIBS)],

Return to bug 486372