/hg/icedtea8-forest/jdk: 5 new changesets

andrew at icedtea.classpath.org andrew at icedtea.classpath.org
Wed Nov 18 04:09:31 UTC 2015


changeset 09efba916e5f in /hg/icedtea8-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea8-forest/jdk?cmd=changeset;node=09efba916e5f
author: andrew
date: Sat Oct 03 19:28:14 2015 +0100

	PR2511: Reset success following calls in LayoutManager.cpp


changeset b0f84ea177e3 in /hg/icedtea8-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea8-forest/jdk?cmd=changeset;node=b0f84ea177e3
author: andrew
date: Wed Nov 18 03:26:51 2015 +0000

	PR2631: jvm.cfg missing for ppc64le


changeset 7f3cf68ce28f in /hg/icedtea8-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea8-forest/jdk?cmd=changeset;node=7f3cf68ce28f
author: andrew
date: Wed Nov 18 03:31:14 2015 +0000

	PR2737: Allow multiple PKCS11 library initialisation to be a non-critical error.


changeset beff28a194e2 in /hg/icedtea8-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea8-forest/jdk?cmd=changeset;node=beff28a194e2
author: andrew
date: Wed Nov 18 03:34:57 2015 +0000

	PR2738: java.lang.UnsatisfiedLinkError: no javalcms in java.library.path
	Summary: Synchronise LCMS.java with upstream version


changeset 7d090e59ad8d in /hg/icedtea8-forest/jdk
details: http://icedtea.classpath.org/hg/icedtea8-forest/jdk?cmd=changeset;node=7d090e59ad8d
author: omajid
date: Fri Nov 06 17:27:27 2015 -0500

	8139932, PR2739: Typo in makefile changes for 8043805 [Allow using a system-installed libjpeg]
	Reviewed-by: erikj, omajid, prr
	Contributed-by: Matthias Klose <doko at ubuntu.com>


diffstat:

 make/lib/Awt2dLibraries.gmk                          |   2 +-
 src/share/classes/sun/java2d/cmm/lcms/LCMS.java      |  21 ++++++------
 src/share/classes/sun/security/pkcs11/Config.java    |   3 +
 src/share/classes/sun/security/pkcs11/SunPKCS11.java |  23 ++++++++++---
 src/share/native/sun/font/layout/LayoutEngine.cpp    |   8 ++++
 src/solaris/bin/ppc64le/jvm.cfg                      |  33 ++++++++++++++++++++
 6 files changed, 72 insertions(+), 18 deletions(-)

diffs (172 lines):

diff -r ff0de5b9abbb -r 7d090e59ad8d make/lib/Awt2dLibraries.gmk
--- a/make/lib/Awt2dLibraries.gmk	Fri Oct 02 06:32:17 2015 +0100
+++ b/make/lib/Awt2dLibraries.gmk	Fri Nov 06 17:27:27 2015 -0500
@@ -755,7 +755,7 @@
 ifeq ($(USE_EXTERNAL_LIBJPEG), true)
   LIBJPEG_LIBS := -ljpeg
   BUILD_LIBJAVAJPEG_INCLUDE_FILES := \
-      imageIOJPEG.c \
+      imageioJPEG.c \
       jpegdecoder.c
   BUILD_LIBJAVAJPEG_HEADERS :=
 else
diff -r ff0de5b9abbb -r 7d090e59ad8d src/share/classes/sun/java2d/cmm/lcms/LCMS.java
--- a/src/share/classes/sun/java2d/cmm/lcms/LCMS.java	Fri Oct 02 06:32:17 2015 +0100
+++ b/src/share/classes/sun/java2d/cmm/lcms/LCMS.java	Fri Nov 06 17:27:27 2015 -0500
@@ -201,17 +201,16 @@
         }
 
         java.security.AccessController.doPrivileged(
-            new java.security.PrivilegedAction() {
-                public Object run() {
-                    /* We need to load awt here because of usage trace and
-                     * disposer frameworks
-                     */
-                    System.loadLibrary("awt");
-                    System.loadLibrary("javalcms");
-                    return null;
-                }
-            }
-        );
+                new java.security.PrivilegedAction() {
+                    public Object run() {
+                        /* We need to load awt here because of usage trace and
+                         * disposer frameworks
+                         */
+                        System.loadLibrary("awt");
+                        System.loadLibrary("lcms");
+                        return null;
+                    }
+                });
 
         initLCMS(LCMSTransform.class, LCMSImageLayout.class, ICC_Profile.class);
 
diff -r ff0de5b9abbb -r 7d090e59ad8d src/share/classes/sun/security/pkcs11/Config.java
--- a/src/share/classes/sun/security/pkcs11/Config.java	Fri Oct 02 06:32:17 2015 +0100
+++ b/src/share/classes/sun/security/pkcs11/Config.java	Fri Nov 06 17:27:27 2015 -0500
@@ -52,6 +52,7 @@
     static final int ERR_HALT       = 1;
     static final int ERR_IGNORE_ALL = 2;
     static final int ERR_IGNORE_LIB = 3;
+    static final int ERR_IGNORE_MULTI_INIT = 4;
 
     // same as allowSingleThreadedModules but controlled via a system property
     // and applied to all providers. if set to false, no SunPKCS11 instances
@@ -1000,6 +1001,8 @@
             handleStartupErrors = ERR_IGNORE_LIB;
         } else if (val.equals("halt")) {
             handleStartupErrors = ERR_HALT;
+        } else if (val.equals("ignoreMultipleInitialisation")) {
+            handleStartupErrors = ERR_IGNORE_MULTI_INIT;
         } else {
             throw excToken("Invalid value for handleStartupErrors:");
         }
diff -r ff0de5b9abbb -r 7d090e59ad8d src/share/classes/sun/security/pkcs11/SunPKCS11.java
--- a/src/share/classes/sun/security/pkcs11/SunPKCS11.java	Fri Oct 02 06:32:17 2015 +0100
+++ b/src/share/classes/sun/security/pkcs11/SunPKCS11.java	Fri Nov 06 17:27:27 2015 -0500
@@ -167,6 +167,7 @@
             try {
                 String nssLibraryDirectory = config.getNssLibraryDirectory();
                 String nssSecmodDirectory = config.getNssSecmodDirectory();
+                int errorHandling = config.getHandleStartupErrors();
                 boolean nssOptimizeSpace = config.getNssOptimizeSpace();
 
                 if (secmod.isInitialized()) {
@@ -174,20 +175,30 @@
                         String s = secmod.getConfigDir();
                         if ((s != null) &&
                                 (s.equals(nssSecmodDirectory) == false)) {
-                            throw new ProviderException("Secmod directory "
-                                + nssSecmodDirectory
-                                + " invalid, NSS already initialized with "
-                                + s);
+                            String msg = "Secmod directory " + nssSecmodDirectory
+                                + " invalid, NSS already initialized with " + s;
+                            if (errorHandling == Config.ERR_IGNORE_MULTI_INIT ||
+                                errorHandling == Config.ERR_IGNORE_ALL) {
+                                throw new UnsupportedOperationException(msg);
+                            } else {
+                                throw new ProviderException(msg);
+                            }
                         }
                     }
                     if (nssLibraryDirectory != null) {
                         String s = secmod.getLibDir();
                         if ((s != null) &&
                                 (s.equals(nssLibraryDirectory) == false)) {
-                            throw new ProviderException("NSS library directory "
+                            String msg = "NSS library directory "
                                 + nssLibraryDirectory
                                 + " invalid, NSS already initialized with "
-                                + s);
+                                + s;
+                            if (errorHandling == Config.ERR_IGNORE_MULTI_INIT ||
+                                errorHandling == Config.ERR_IGNORE_ALL) {
+                                throw new UnsupportedOperationException(msg);
+                            } else {
+                                throw new ProviderException(msg);
+                            }
                         }
                     }
                 } else {
diff -r ff0de5b9abbb -r 7d090e59ad8d src/share/native/sun/font/layout/LayoutEngine.cpp
--- a/src/share/native/sun/font/layout/LayoutEngine.cpp	Fri Oct 02 06:32:17 2015 +0100
+++ b/src/share/native/sun/font/layout/LayoutEngine.cpp	Fri Nov 06 17:27:27 2015 -0500
@@ -672,12 +672,20 @@
             break;
         }
     } else {
+        if (LE_FAILURE(success)) {
+	    // Reset if gsubTable failed
+            success = LE_NO_ERROR;
+        }
         LEReferenceTo<MorphTableHeader2> morxTable(fontInstance, morxTableTag, success);
         if (LE_SUCCESS(success) &&
             morxTable.isValid() &&
             SWAPL(morxTable->version)==0x00020000) {
             result = new GXLayoutEngine2(fontInstance, scriptCode, languageCode, morxTable, typoFlags, success);
         } else {
+          if (LE_FAILURE(success)) {
+	    // Reset if morxTable failed
+            success = LE_NO_ERROR;
+          }
           LEReferenceTo<MorphTableHeader> mortTable(fontInstance, mortTableTag, success);
           if (LE_SUCCESS(success) && mortTable.isValid() && SWAPL(mortTable->version)==0x00010000) { // mort
             result = new GXLayoutEngine(fontInstance, scriptCode, languageCode, mortTable, success);
diff -r ff0de5b9abbb -r 7d090e59ad8d src/solaris/bin/ppc64le/jvm.cfg
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/src/solaris/bin/ppc64le/jvm.cfg	Fri Nov 06 17:27:27 2015 -0500
@@ -0,0 +1,33 @@
+# Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
+# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
+#
+# This code is free software; you can redistribute it and/or modify it
+# under the terms of the GNU General Public License version 2 only, as
+# published by the Free Software Foundation.  Oracle designates this
+# particular file as subject to the "Classpath" exception as provided
+# by Oracle in the LICENSE file that accompanied this code.
+#
+# This code is distributed in the hope that it will be useful, but WITHOUT
+# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
+# version 2 for more details (a copy is included in the LICENSE file that
+# accompanied this code).
+#
+# You should have received a copy of the GNU General Public License version
+# 2 along with this work; if not, write to the Free Software Foundation,
+# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
+#
+# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
+# or visit www.oracle.com if you need additional information or have any
+# questions.
+#
+# List of JVMs that can be used as an option to java, javac, etc.
+# Order is important -- first in this list is the default JVM.
+# NOTE that this both this file and its format are UNSUPPORTED and
+# WILL GO AWAY in a future release.
+#
+# You may also select a JVM in an arbitrary location with the
+# "-XXaltjvm=<jvm_dir>" option, but that too is unsupported
+# and may not be available in a future release.
+#
+-server KNOWN


More information about the distro-pkg-dev mailing list