Merge jdk8u172-b09

Tue, 06 Mar 2018 20:32:27 +0000

author
asaha
date
Tue, 06 Mar 2018 20:32:27 +0000
changeset 1701
e9aaa28b626d
parent 1698
6cbbef7afbc6
parent 1700
6a9efc037460
child 1702
123129413d20

Merge

.hgtags file | annotate | diff | comparison | revisions
     1.1 --- a/.hgtags	Tue Mar 06 20:30:30 2018 +0000
     1.2 +++ b/.hgtags	Tue Mar 06 20:32:27 2018 +0000
     1.3 @@ -874,6 +874,7 @@
     1.4  3bca003f024c7bb6774499ff2ede57d300c18c79 jdk8u171-b06
     1.5  b90a8fc589afa4ac20a4d1e4f819058a5730af9f jdk8u171-b07
     1.6  f7f59d87e97dd1e3a7ff4ebc5ed843b2ed5f2361 jdk8u171-b08
     1.7 +b3563151fe42c6b997279fc24f8329c4c03add96 jdk8u171-b09
     1.8  72dbc8d63308f5b04b9fd3e06d139d673f992212 jdk8u172-b00
     1.9  fbb7c1e76e59aabb85a70c81301f47b980f83225 jdk8u172-b01
    1.10  56874ff37e89559692d1314d48cbab574544b677 jdk8u172-b02
     2.1 --- a/src/share/classes/com/sun/corba/se/impl/ior/StubIORImpl.java	Tue Mar 06 20:30:30 2018 +0000
     2.2 +++ b/src/share/classes/com/sun/corba/se/impl/ior/StubIORImpl.java	Tue Mar 06 20:32:27 2018 +0000
     2.3 @@ -31,9 +31,9 @@
     2.4  
     2.5  package com.sun.corba.se.impl.ior;
     2.6  
     2.7 -import java.io.ObjectInputStream ;
     2.8 -import java.io.ObjectOutputStream ;
     2.9 -import java.io.IOException ;
    2.10 +import java.io.IOException;
    2.11 +import java.io.ObjectOutputStream;
    2.12 +import sun.corba.SharedSecrets;
    2.13  
    2.14  import org.omg.CORBA.ORB ;
    2.15  
    2.16 @@ -46,7 +46,6 @@
    2.17  // other vendor's ORBs.
    2.18  import com.sun.corba.se.spi.presentation.rmi.StubAdapter ;
    2.19  import com.sun.corba.se.impl.orbutil.HexOutputStream ;
    2.20 -import sun.corba.SharedSecrets;
    2.21  
    2.22  /**
    2.23   * This class implements a very simply IOR representation
     3.1 --- a/src/share/classes/sun/corba/SharedSecrets.java	Tue Mar 06 20:30:30 2018 +0000
     3.2 +++ b/src/share/classes/sun/corba/SharedSecrets.java	Tue Mar 06 20:32:27 2018 +0000
     3.3 @@ -29,8 +29,7 @@
     3.4  import sun.misc.JavaOISAccess;
     3.5  import sun.misc.Unsafe;
     3.6  
     3.7 -import java.io.ObjectInputStream;
     3.8 -import java.security.AccessController;
     3.9 +import java.lang.reflect.Method;
    3.10  
    3.11  /** A repository of "shared secrets", which are a mechanism for
    3.12      calling implementation-private methods in another package without
    3.13 @@ -45,8 +44,32 @@
    3.14  public class SharedSecrets {
    3.15      private static final Unsafe unsafe = Unsafe.getUnsafe();
    3.16      private static JavaCorbaAccess javaCorbaAccess;
    3.17 +    private static final Method getJavaOISAccessMethod;
    3.18      private static JavaOISAccess javaOISAccess;
    3.19  
    3.20 +    // Initialize getJavaOISAccessMethod using reflection.
    3.21 +    static {
    3.22 +        try {
    3.23 +            Class sharedSecret = Class.forName("sun.misc.SharedSecrets");
    3.24 +            getJavaOISAccessMethod =
    3.25 +                    sharedSecret.getMethod("getJavaOISAccess");
    3.26 +        } catch (Exception e) {
    3.27 +            throw new ExceptionInInitializerError(e);
    3.28 +        }
    3.29 +    }
    3.30 +
    3.31 +    public static JavaOISAccess getJavaOISAccess() {
    3.32 +        if (javaOISAccess == null) {
    3.33 +            try {
    3.34 +                javaOISAccess =
    3.35 +                        (JavaOISAccess) getJavaOISAccessMethod.invoke(null);
    3.36 +            } catch (Exception e) {
    3.37 +                throw new ExceptionInInitializerError(e);
    3.38 +            }
    3.39 +        }
    3.40 +        return javaOISAccess;
    3.41 +    }
    3.42 +
    3.43      public static JavaCorbaAccess getJavaCorbaAccess() {
    3.44          if (javaCorbaAccess == null) {
    3.45              // Ensure ValueUtility is initialized; we know that that class
    3.46 @@ -59,16 +82,4 @@
    3.47      public static void setJavaCorbaAccess(JavaCorbaAccess access) {
    3.48          javaCorbaAccess = access;
    3.49      }
    3.50 -
    3.51 -    public static void setJavaOISAccess(JavaOISAccess access) {
    3.52 -        javaOISAccess = access;
    3.53 -    }
    3.54 -
    3.55 -    public static JavaOISAccess getJavaOISAccess() {
    3.56 -        if (javaOISAccess == null)
    3.57 -            unsafe.ensureClassInitialized(ObjectInputStream.class);
    3.58 -
    3.59 -        return javaOISAccess;
    3.60 -    }
    3.61 -
    3.62  }

mercurial