diff options
author | marcus <marcus@FreeBSD.org> | 2002-11-07 23:23:04 +0000 |
---|---|---|
committer | marcus <marcus@FreeBSD.org> | 2002-11-07 23:23:04 +0000 |
commit | 5a1cad77f69a9e7799845513d20774d105ce1044 (patch) | |
tree | 567b556eb3a8633c02eb9d072b15257b32fa6a1b /x11-toolkits | |
parent | d4b88b8d714d66863271fc2da8bdcaf38bad9381 (diff) | |
download | FreeBSD-ports-5a1cad77f69a9e7799845513d20774d105ce1044.zip FreeBSD-ports-5a1cad77f69a9e7799845513d20774d105ce1044.tar.gz |
Fix a problem in the GIF pixbuf loader that caused GTK+ apps to crash when
trying to load GIF images.
Reported by: William N. Culler Jr. <william@neo.rr.com>
Diffstat (limited to 'x11-toolkits')
-rw-r--r-- | x11-toolkits/gtk20/Makefile | 2 | ||||
-rw-r--r-- | x11-toolkits/gtk20/files/patch-gdk-pixbuf_io-gif.c | 26 | ||||
-rw-r--r-- | x11-toolkits/gtk30/Makefile | 2 | ||||
-rw-r--r-- | x11-toolkits/gtk30/files/patch-gdk-pixbuf_io-gif.c | 26 |
4 files changed, 54 insertions, 2 deletions
diff --git a/x11-toolkits/gtk20/Makefile b/x11-toolkits/gtk20/Makefile index 0487187..f6bd80a 100644 --- a/x11-toolkits/gtk20/Makefile +++ b/x11-toolkits/gtk20/Makefile @@ -7,7 +7,7 @@ PORTNAME= gtk PORTVERSION= 2.0.7 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11-toolkits MASTER_SITES= ${MASTER_SITE_GNOME:S,%SUBDIR%,sources/gtk+/2.0,} \ ftp://ftp.gtk.org/pub/gtk/v2.0/ \ diff --git a/x11-toolkits/gtk20/files/patch-gdk-pixbuf_io-gif.c b/x11-toolkits/gtk20/files/patch-gdk-pixbuf_io-gif.c new file mode 100644 index 0000000..474e58b --- /dev/null +++ b/x11-toolkits/gtk20/files/patch-gdk-pixbuf_io-gif.c @@ -0,0 +1,26 @@ +--- gdk-pixbuf/io-gif.c.orig Thu Nov 7 18:08:02 2002 ++++ gdk-pixbuf/io-gif.c Thu Nov 7 18:14:25 2002 +@@ -534,13 +534,16 @@ + return 0; + } + +-#define CHECK_LZW_SP() if(((guchar *)context->lzw_sp) >= (((guchar *)context->lzw_stack) + sizeof(context->lzw_stack))) { \ +- g_set_error (context->error, \ +- GDK_PIXBUF_ERROR, \ +- GDK_PIXBUF_ERROR_CORRUPT_IMAGE, \ +- _("Stack overflow")); \ +- return -2; \ +-} ++#define CHECK_LZWP_SP() G_STMT_START { \ ++ if ((guchar *)context->lzw_sp >= \ ++ (guchar *)context->lzw_stack + sizeof (context->lzw_stack)) { \ ++ g_set_error (context->error, \ ++ GDK_PIXBUF_ERROR, \ ++ GDK_PIXBUF_ERROR_CORRUPT_IMAGE, \ ++ _("Stack overflow")); \ ++ return -2; \ ++ } \ ++} G_STMT_END + + static int + lzw_read_byte (GifContext *context) diff --git a/x11-toolkits/gtk30/Makefile b/x11-toolkits/gtk30/Makefile index 0487187..f6bd80a 100644 --- a/x11-toolkits/gtk30/Makefile +++ b/x11-toolkits/gtk30/Makefile @@ -7,7 +7,7 @@ PORTNAME= gtk PORTVERSION= 2.0.7 -PORTREVISION= 1 +PORTREVISION= 2 CATEGORIES= x11-toolkits MASTER_SITES= ${MASTER_SITE_GNOME:S,%SUBDIR%,sources/gtk+/2.0,} \ ftp://ftp.gtk.org/pub/gtk/v2.0/ \ diff --git a/x11-toolkits/gtk30/files/patch-gdk-pixbuf_io-gif.c b/x11-toolkits/gtk30/files/patch-gdk-pixbuf_io-gif.c new file mode 100644 index 0000000..474e58b --- /dev/null +++ b/x11-toolkits/gtk30/files/patch-gdk-pixbuf_io-gif.c @@ -0,0 +1,26 @@ +--- gdk-pixbuf/io-gif.c.orig Thu Nov 7 18:08:02 2002 ++++ gdk-pixbuf/io-gif.c Thu Nov 7 18:14:25 2002 +@@ -534,13 +534,16 @@ + return 0; + } + +-#define CHECK_LZW_SP() if(((guchar *)context->lzw_sp) >= (((guchar *)context->lzw_stack) + sizeof(context->lzw_stack))) { \ +- g_set_error (context->error, \ +- GDK_PIXBUF_ERROR, \ +- GDK_PIXBUF_ERROR_CORRUPT_IMAGE, \ +- _("Stack overflow")); \ +- return -2; \ +-} ++#define CHECK_LZWP_SP() G_STMT_START { \ ++ if ((guchar *)context->lzw_sp >= \ ++ (guchar *)context->lzw_stack + sizeof (context->lzw_stack)) { \ ++ g_set_error (context->error, \ ++ GDK_PIXBUF_ERROR, \ ++ GDK_PIXBUF_ERROR_CORRUPT_IMAGE, \ ++ _("Stack overflow")); \ ++ return -2; \ ++ } \ ++} G_STMT_END + + static int + lzw_read_byte (GifContext *context) |