commit | a282171c6f9a77fb527d1a84bcd1ba3a2974f17e | [log] [tgz] |
---|---|---|
author | Richard S. Hall <rickhall@apache.org> | Mon Apr 16 19:16:58 2012 +0000 |
committer | Richard S. Hall <rickhall@apache.org> | Mon Apr 16 19:16:58 2012 +0000 |
tree | 64b501fd9b9ba2b01b20fe797438edbc7268746c | |
parent | 114bae408555aea6cff6d5078fd30498fd5c4019 [diff] |
Apply patch to avoid calculating package space more than once. (FELIX-3465) git-svn-id: https://svn.apache.org/repos/asf/felix/trunk@1326752 13f79535-47bb-0310-9956-ffa450edef68
diff --git a/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java b/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java index 739b2c6..8008cd6 100644 --- a/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java +++ b/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java
@@ -509,6 +509,12 @@ } cycle.add(revision); + // Make sure package space hasn't already been calculated. + if (revisionPkgMap.containsKey(revision)) + { + return; + } + // Create parallel arrays for requirement and proposed candidate // capability or actual capability if revision is resolved or not. List<BundleRequirement> reqs = new ArrayList();
diff --git a/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java b/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java index e6d3311..0ee3c53 100644 --- a/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java +++ b/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
@@ -522,6 +522,12 @@ } cycle.add(resource); + // Make sure package space hasn't already been calculated. + if (resourcePkgMap.containsKey(resource)) + { + return; + } + // Create parallel arrays for requirement and proposed candidate // capability or actual capability if resource is resolved or not. List<Requirement> reqs = new ArrayList();