You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@pdfbox.apache.org by ti...@apache.org on 2019/09/27 17:32:52 UTC

svn commit: r1867644 - /pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java

Author: tilman
Date: Fri Sep 27 17:32:52 2019
New Revision: 1867644

URL: http://svn.apache.org/viewvc?rev=1867644&view=rev
Log:
PDFBOX-4659: don't assume KCMS is active on jdk8 or later if class doesn't exist, as suggested by Jigar Shah; assume it is active before jdk8

Modified:
    pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java

Modified: pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java
URL: http://svn.apache.org/viewvc/pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java?rev=1867644&r1=1867643&r2=1867644&view=diff
==============================================================================
--- pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java (original)
+++ pdfbox/branches/2.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/graphics/color/PDICCBased.java Fri Sep 27 17:32:52 2019
@@ -75,7 +75,26 @@ public final class PDICCBased extends PD
     static
     {
         String cmmProperty = System.getProperty("sun.java2d.cmm");
-        IS_KCMS = !isMinJdk8() || "sun.java2d.cmm.kcms.KcmsServiceProvider".equals(cmmProperty);
+        boolean result = false;
+        if (!isMinJdk8())
+        {
+            // always KCMS but class has different name
+            result = true;
+        }
+        else if ("sun.java2d.cmm.kcms.KcmsServiceProvider".equals(cmmProperty))
+        {
+            try
+            {
+                Class.forName("sun.java2d.cmm.kcms.KcmsServiceProvider");
+                result = true;
+            }
+            catch (ClassNotFoundException e)
+            {
+                // KCMS not available
+            }
+        }
+        // else maybe KCMS was available, but not wished
+        IS_KCMS = result;
     }
 
     /**