[8u60] Request for approval 8077982: GIFLIB upgrade
Andrew Hughes
gnu.andrew at redhat.com
Wed May 6 15:32:59 UTC 2015
----- Original Message -----
> Hello,
>
> This is a request for approval to backport a fix from the jdk9 to the
> jdk8u-dev repository.
> Changes applies cleanly to jdk8u-dev after path reshuffling.
>
> The bug: https://bugs.openjdk.java.net/browse/JDK-8077982
> The fix: http://hg.openjdk.java.net/jdk9/client/jdk/rev/5bf5794f6193
> The review:
> http://mail.openjdk.java.net/pipermail/awt-dev/2015-April/009269.html
>
> --
> Thanks,
>
> Alexander.
>
>
The splashscreen changes, such as:
@@ -310,7 +296,7 @@
free(pBitmapBits);
free(pOldBitmapBits);
- DGifCloseFile(gif);
+ DGifCloseFile(gif, NULL);
return 1;
}
@@ -318,7 +304,7 @@
int
SplashDecodeGifStream(Splash * splash, SplashStream * stream)
{
- GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc);
+ GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, NULL);
if (!gif)
return 0;
will break system giflib builds with versions older than 5.
In fixing this in IcedTea, we added #ifdefs to this code.
{
+#if GIFLIB_MAJOR >= 5
+ int error = 0;
+ GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc, &error);
+
+ if (error)
+ return 0;
+#else
GifFileType *gif = DGifOpen((void *) stream, SplashStreamGifInputFunc);
if (!gif)
return 0;
+#endif
+#if GIFLIB_MAJOR > 5 || (GIFLIB_MAJOR == 5 && GIFLIB_MINOR >= 1)
+ int error = 0;
+ DGifCloseFile(gif, &error);
+ if (error)
+ return 0;
+#else
DGifCloseFile(gif);
+#endif
--
Andrew :)
Free Java Software Engineer
Red Hat, Inc. (http://www.redhat.com)
PGP Key: ed25519/35964222 (hkp://keys.gnupg.net)
Fingerprint = 5132 579D D154 0ED2 3E04 C5A0 CFDA 0F9B 3596 4222
PGP Key: rsa4096/248BDC07 (hkp://keys.gnupg.net)
Fingerprint = EC5A 1F5E C0AD 1D15 8F1F 8F91 3B96 A578 248B DC07
More information about the jdk8u-dev
mailing list