You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@tomee.apache.org by an...@apache.org on 2011/07/15 15:57:54 UTC
svn commit: r1147156 -
/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java
Author: andygumbrecht
Date: Fri Jul 15 13:57:53 2011
New Revision: 1147156
URL: http://svn.apache.org/viewvc?rev=1147156&view=rev
Log:
Clone keys as dependent keys may be removed concurrently by the vm.
Modified:
openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java
Modified: openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java
URL: http://svn.apache.org/viewvc/openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java?rev=1147156&r1=1147155&r2=1147156&view=diff
==============================================================================
--- openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java (original)
+++ openejb/trunk/openejb3/container/openejb-core/src/main/java/org/apache/openejb/ClassLoaderUtil.java Fri Jul 15 13:57:53 2011
@@ -330,7 +330,8 @@ public class ClassLoaderUtil {
File file;
URL url;
- for (final Object item : fileCache.keySet()) {
+ final Set keys = new HashSet(fileCache.keySet());
+ for (final Object item : keys) {
//Due to several different implementation changes in various JDK releases
//the 'item' can be one of the following (so far):
@@ -371,6 +372,7 @@ public class ClassLoaderUtil {
//unknown kind of url
return;
}
+
if (null != file && null != url && isParent(jarLocation, file)) {
urls.add(url);
}