diff options
author | Koen Kooi <koen@openembedded.org> | 2005-06-30 08:19:37 +0000 |
---|---|---|
committer | OpenEmbedded Project <openembedded-devel@lists.openembedded.org> | 2005-06-30 08:19:37 +0000 |
commit | c8e5702127e507e82e6f68a4b8c546803accea9d (patch) | |
tree | 00583491f40ecc640f2b28452af995e3a63a09d7 /packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff | |
parent | 87ec8ca4d2e2eb4d1c1e1e1a6b46a395d56805b9 (diff) |
import clean BK tree at cset 1.3670
Diffstat (limited to 'packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff')
-rw-r--r-- | packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff b/packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff index e69de29bb2..a42d0e4ac2 100644 --- a/packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff +++ b/packages/gtk+/gtk+-2.6.4-1.osso7/io-gif.c.diff @@ -0,0 +1,37 @@ +--- gtk+-2.6.4/gdk-pixbuf/io-gif.c 2004-11-12 07:34:31.000000000 +0200 ++++ gtk+-2.6.4/gdk-pixbuf/io-gif.c 2005-04-06 16:19:35.597126776 +0300 +@@ -920,6 +920,34 @@ + + gdk_pixbuf_gif_anim_frame_composite (context->animation, prev_frame); + ++ /* Composite failed */ ++ if (prev_frame->composited == NULL) { ++ GdkPixbufFrame *frame = NULL; ++ link = g_list_first (context->animation->frames); ++ while (link != NULL) { ++ frame = (GdkPixbufFrame *)link->data; ++ if (frame != NULL) { ++ if (frame->pixbuf != NULL) ++ g_object_unref (frame->pixbuf); ++ if (frame->composited != NULL) ++ g_object_unref (frame->composited); ++ if (frame->revert != NULL) ++ g_object_unref (frame->revert); ++ g_free (frame); ++ } ++ link = link->next; ++ } ++ ++ g_list_free (context->animation->frames); ++ context->animation->frames = NULL; ++ ++ g_set_error (context->error, ++ GDK_PIXBUF_ERROR, ++ GDK_PIXBUF_ERROR_INSUFFICIENT_MEMORY, ++ _("Not enough memory to composite a frame in GIF file")); ++ return -2; ++ } ++ + x = context->frame->x_offset; + y = context->frame->y_offset; + w = gdk_pixbuf_get_width (context->frame->pixbuf); |