8074696: Remote debugging session hangs for several minutes when calling findBootType
Reviewed-by: sspitsyn, jbachorik
--- a/jdk/src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java Thu Oct 29 05:24:30 2015 -0700
+++ b/jdk/src/jdk.jdi/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java Fri Oct 30 13:13:13 2015 +0100
@@ -1,5 +1,5 @@
/*
- * Copyright (c) 1998, 2011, Oracle and/or its affiliates. All rights reserved.
+ * Copyright (c) 1998, 2015, 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
@@ -1041,12 +1041,11 @@
}
Type findBootType(String signature) throws ClassNotLoadedException {
- List<ReferenceType> types = allClasses();
+ List<ReferenceType> types = retrieveClassesBySignature(signature);
Iterator<ReferenceType> iter = types.iterator();
while (iter.hasNext()) {
ReferenceType type = iter.next();
- if ((type.classLoader() == null) &&
- (type.signature().equals(signature))) {
+ if (type.classLoader() == null) {
return type;
}
}