From a06cbfd6f4d6d2fd908b2893c96b5f89a27d0716 Mon Sep 17 00:00:00 2001 From: Harald Kuhr Date: Thu, 30 Aug 2018 15:02:04 +0200 Subject: [PATCH] #437 Catching exception from static init, prints a warning and moves on. (cherry picked from commit d8d0131) --- .../com/twelvemonkeys/imageio/color/ColorSpaces.java | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/imageio/imageio-core/src/main/java/com/twelvemonkeys/imageio/color/ColorSpaces.java b/imageio/imageio-core/src/main/java/com/twelvemonkeys/imageio/color/ColorSpaces.java index 8e0ba318..b9deebd8 100644 --- a/imageio/imageio-core/src/main/java/com/twelvemonkeys/imageio/color/ColorSpaces.java +++ b/imageio/imageio-core/src/main/java/com/twelvemonkeys/imageio/color/ColorSpaces.java @@ -101,8 +101,16 @@ public final class ColorSpaces { private static final Map cache = new LRUHashMap<>(10); static { - // Force invocation of ProfileDeferralMgr.activateProfiles() to avoid JDK-6986863 - ICC_Profile.getInstance(ColorSpace.CS_sRGB).getData(); + try { + // Force invocation of ProfileDeferralMgr.activateProfiles() to avoid JDK-6986863 + ICC_Profile.getInstance(ColorSpace.CS_sRGB).getData(); + } + catch (Throwable disasters) { + System.err.println("ICC Color Profile not properly activated due to the exception below."); + System.err.println("Expect to see JDK-6986863 in action, and consider filing a bug report to your JRE provider."); + + disasters.printStackTrace(); + } } private ColorSpaces() {}