Bug 437791 – Animation is played at the wrong speed

2008-08-29  Björn Lindqvist  <bjourne@gmail.com>

	Bug 437791 – Animation is played at the wrong speed

	* gdk-pixbuf/io-gif.c (gif_get_lzw): Better 100 ms timeout for
	broken GIFs with 0 frame timeout.

svn path=/trunk/; revision=21242
This commit is contained in:
Björn Lindqvist 2008-08-29 22:21:32 +00:00 committed by Björn Lindqvist
parent 516ce851fb
commit 0ba6028da4
2 changed files with 15 additions and 4 deletions

View File

@ -1,3 +1,10 @@
2008-08-29 Björn Lindqvist <bjourne@gmail.com>
Bug 437791 Animation is played at the wrong speed
* gdk-pixbuf/io-gif.c (gif_get_lzw): Better 100 ms timeout for
broken GIFs with 0 frame timeout.
2008-08-29 Christian Dywan <christian@imendio.com>
Bug 549810 Memory leaks in printing code

View File

@ -874,10 +874,14 @@ gif_get_lzw (GifContext *context)
/* GIF delay is in hundredths, we want thousandths */
context->frame->delay_time = context->gif89.delay_time * 10;
/* Some GIFs apparently have delay time of 0,
* that crashes everything so set it to "fast".
* Also, timeouts less than 20 or so just lock up
* the app or make the animation choppy, so fix them.
/* GIFs with delay time 0 are mostly broken, but they
* just want a default, "not that fast" delay.
*/
if (context->frame->delay_time == 0)
context->frame->delay_time = 100;
/* No GIFs gets to play faster than 50 fps. They just
* lock up poor gtk.
*/
if (context->frame->delay_time < 20)
context->frame->delay_time = 20; /* 20 = "fast" */