Well, the third round of testing finally identified (and fixed)
the problem I was having with some of my GIFs going blank.
The problem was that the global variables used to determine whether a
GIF is transparent are only initialized once. Therefore, after the
first transparent GIF is read, Mosaic for X 2.1 treats all later 2-color
GIFs as if they too are transparent.
To test your system to see if it is affected by the Gif89 bug, look
at <http://www.ics.uci.edu/Test/Gif89-test.html>. I have no idea
whether or not the same bug affects the other Mosaic platforms.
What follows is the patch to fix the initialization bug in
Mosaic-2.1/src/gifread.c which causes 2-color inlined GIFs to appear
faded/blank after a transparent GIF89 has been read.
PLEASE NOTE that this is NOT AN OFFICIAL PATCH, but it works
and it is so small and harmless that it justifies a general post.
Be sure to be in the Mosaic-2.1/src before doing the patch.
....Roy Fielding ICS Grad Student, University of California, Irvine USA
([email protected])
-------------------------- cut here ----------------------------------
*** save/gifread.c Sat Jan 8 11:36:09 1994
--- gifread.c Sat Jan 8 11:43:37 1994
***************
*** 91,96 ****
--- 91,101 ----
verbose = FALSE;
showComment = FALSE;
+ Gif89.transparent = -1;
+ Gif89.delayTime = -1;
+ Gif89.inputFlag = -1;
+ Gif89.disposal = 0;
+
if (! ReadOK(fd,buf,6))
{
#if 0