8074696: Remote debugging session hangs for several minutes when calling findBootType
Reviewed-by: sspitsyn, jbachorik
diff --git a/src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java b/src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java
index 3397e0f..83547e4 100644
--- a/src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java
+++ b/src/share/classes/com/sun/tools/jdi/VirtualMachineImpl.java
@@ -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;
}
}