bug in ReadGIFImage when using local localmap

莫红波 <[email protected]> Wed, 2 Dec 2015 16:20:26 +0800
Newsgroups gmane.comp.video.graphicsmagick.bugs
Message-ID <CACghtk0KqTCyCKtpJYGRpTOdwuPC8EiDdM7uZP6wmqtg5cN1Ow@mail.gmail.com>
--001a113f31b44d1f140525e5f222
Content-Type: multipart/alternative; boundary=001a113f31b44d1f0f0525e5f220

--001a113f31b44d1f0f0525e5f220
Content-Type: text/plain; charset=UTF-8

It's strange in sourceforge. Sorry for post so many mails.

Some GIFs set transparent color index equal to size of colormaps which is
an invalid value.

1011     if (opacity >= (long) image->colors)
1012       image->colors=opacity+1;

As code above, Graphicsmagick will set image->colors equal to opacity+1.
However, this is a bug when reading colormaps from image blob.

1067         if (ReadBlob(image,3*image->colors,(char *) colormap) !=
3*image->colors)

ReadBlob will read more colors which are not real color.

BTW, I can't upload GIF Image as it's too large.

--001a113f31b44d1f0f0525e5f220
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>It&#39;s strange in sourceforge. Sorry for post so ma=
ny mails.</div><div><br></div><div>Some GIFs set transparent color index eq=
ual to size of colormaps which is an invalid value.</div><div><br></div><di=
v>1011 =C2=A0 =C2=A0 if (opacity &gt;=3D (long) image-&gt;colors)</div><div=
>1012 =C2=A0 =C2=A0 =C2=A0 image-&gt;colors=3Dopacity+1;</div><div><br></di=
v><div>As code above, Graphicsmagick will set image-&gt;colors equal to opa=
city+1.</div><div>However, this is a bug when reading colormaps from image =
blob.</div><div><br></div><div>1067 =C2=A0 =C2=A0 =C2=A0 =C2=A0 if (ReadBlo=
b(image,3*image-&gt;colors,(char *) colormap) !=3D 3*image-&gt;colors)</div=
><div><br></div><div>ReadBlob will read more colors which are not real colo=
r.</div><div><br></div><div>BTW, I can&#39;t upload GIF Image as it&#39;s t=
oo large.</div></div>

--001a113f31b44d1f0f0525e5f220--
--001a113f31b44d1f140525e5f222
Content-Type: application/octet-stream; name="code_gif.patch"
Content-Disposition: attachment; filename="code_gif.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_ihojmv7i0

LS0tIEdyYXBoaWNzTWFnaWNrLTEuMy4yMS9vbGQtY29kZXJzL2dpZi5jCTIwMTUtMDMtMDEgMDQ6
NTE6NTguMDAwMDAwMDAwICswODAwCisrKyBHcmFwaGljc01hZ2ljay0xLjMuMjEvY29kZXJzL2dp
Zi5jCTIwMTUtMTEtMjAgMTE6MzY6MDUuNDI4NzkzODIyICswODAwCkBAIC04NTMsNiArODUzLDcg
QEAKICAgICBkZWxheSwKICAgICBkaXNwb3NlLAogICAgIGdsb2JhbF9jb2xvcnMsCisgICAgbG9j
YWxfY29sb3JzLAogICAgIGltYWdlX2NvdW50LAogICAgIGl0ZXJhdGlvbnM7CiAKQEAgLTEwMDcs
NyArMTAwOCwxNCBAQAogICAgIGltYWdlLT5kZXB0aD04OwogICAgIGZsYWc9UmVhZEJsb2JCeXRl
KGltYWdlKTsKICAgICBpbWFnZS0+aW50ZXJsYWNlPUJpdFNldChmbGFnLDB4NDApID8gTGluZUlu
dGVybGFjZSA6IE5vSW50ZXJsYWNlOwotICAgIGltYWdlLT5jb2xvcnM9IUJpdFNldChmbGFnLDB4
ODApID8gZ2xvYmFsX2NvbG9ycyA6IDB4MDFVIDw8ICgoZmxhZyAmIDB4MDcpKzEpOworICAgIC8q
CisgICAgICogV29ya0Fyb3VuZDoKKyAgICAgKiBJbiBzb21lIEdJRiBpbWFnZXMgdHJhbnNwYXJl
bnQgY29sb3IgaW5kZXggaXMgZXF1YWwgdG8gdGhlIG51bWJlciBvZiBsb2NhbCBjb2xvcnMKKyAg
ICAgKiBhbmQgdGhpcyBpbmRleCBpcyBpbnZhbGlkIG9idmlvdXNseS4gTW9yZW92ZXIsIGl0IHdp
bGwgY2F1c2UgY29ycnVwdCBpbWFnZSB3aGVuIGFsbG9jYXRpbmcKKyAgICAgKiBsb2NhbF9jb2xv
cnMrMSBjb2xvcm1hcCBlbnRyaWVzLiBTbyB3ZSBuZWVkIHRvIHdvcmsgYXJvdW5kLgorICAgICAq
CisgICAgICogKi8KKyAgICBsb2NhbF9jb2xvcnM9aW1hZ2UtPmNvbG9ycz0hQml0U2V0KGZsYWcs
MHg4MCkgPyBnbG9iYWxfY29sb3JzIDogMHgwMVUgPDwgKChmbGFnICYgMHgwNykrMSk7CiAgICAg
aWYgKG9wYWNpdHkgPj0gKGxvbmcpIGltYWdlLT5jb2xvcnMpCiAgICAgICBpbWFnZS0+Y29sb3Jz
PW9wYWNpdHkrMTsKICAgICBpbWFnZS0+cGFnZS53aWR0aD1wYWdlLndpZHRoOwpAQCAtMTA2NCw3
ICsxMDcyLDcgQEAKICAgICAgICAgICAgIFRocm93UmVhZGVyRXhjZXB0aW9uKFJlc291cmNlTGlt
aXRFcnJvcixNZW1vcnlBbGxvY2F0aW9uRmFpbGVkLAogICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgaW1hZ2UpOwogICAgICAgICAgIH0KLSAgICAgICAgaWYgKFJlYWRCbG9iKGltYWdl
LDMqaW1hZ2UtPmNvbG9ycywoY2hhciAqKSBjb2xvcm1hcCkgIT0gMyppbWFnZS0+Y29sb3JzKQor
ICAgICAgICBpZiAoUmVhZEJsb2IoaW1hZ2UsMypsb2NhbF9jb2xvcnMsKGNoYXIgKikgY29sb3Jt
YXApICE9IDMqbG9jYWxfY29sb3JzKQogCSAgewogCSAgICBNYWdpY2tGcmVlTWVtb3J5KGdsb2Jh
bF9jb2xvcm1hcCk7CiAJICAgIE1hZ2lja0ZyZWVNZW1vcnkoY29sb3JtYXApOwo=
--001a113f31b44d1f140525e5f222
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

------------------------------------------------------------------------------
Go from Idea to Many App Stores Faster with Intel(R) XDK
Give your users amazing mobile app experiences with Intel(R) XDK.
Use one codebase in this all-in-one HTML5 development environment.
Design, debug & build mobile apps & 2D/3D high-impact games for multiple OSs.
http://pubads.g.doubleclick.net/gampad/clk?id=254741911&iu=/4140
--001a113f31b44d1f140525e5f222
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

_______________________________________________
Graphicsmagick-bugs mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/graphicsmagick-bugs

--001a113f31b44d1f140525e5f222--