changeset 52557:448084150145

8228548: Normalize normalization for all Reviewed-by: chegar, rhalade, igerasim
author igerasim
date Wed, 14 Aug 2019 17:24:43 -0700
parents f4cb3e7ca20c
children 4a6b544ff9ad
files src/java.base/share/classes/java/net/URL.java
diffstat 1 files changed, 5 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/src/java.base/share/classes/java/net/URL.java	Tue Oct 01 08:47:32 2019 -0700
+++ b/src/java.base/share/classes/java/net/URL.java	Wed Aug 14 17:24:43 2019 -0700
@@ -43,6 +43,7 @@
 
 import jdk.internal.misc.JavaNetURLAccess;
 import jdk.internal.misc.SharedSecrets;
+import jdk.internal.misc.VM;
 import sun.net.util.IPAddressUtil;
 import sun.security.util.SecurityConstants;
 import sun.security.action.GetPropertyAction;
@@ -1398,7 +1399,7 @@
         boolean checkedWithFactory = false;
         boolean overrideableProtocol = isOverrideable(protocol);
 
-        if (overrideableProtocol && jdk.internal.misc.VM.isBooted()) {
+        if (overrideableProtocol && VM.isBooted()) {
             // Use the factory (if any). Volatile read makes
             // URLStreamHandlerFactory appear fully initialized to current thread.
             fac = factory;
@@ -1629,7 +1630,9 @@
     }
 
     boolean isBuiltinStreamHandler(URLStreamHandler handler) {
-       return isBuiltinStreamHandler(handler.getClass().getName());
+       Class<?> handlerClass = handler.getClass();
+       return isBuiltinStreamHandler(handlerClass.getName())
+                 || VM.isSystemDomainLoader(handlerClass.getClassLoader());
     }
 
     private boolean isBuiltinStreamHandler(String handlerClassName) {