Author: rickhall
Date: Mon Apr 16 19:16:58 2012
New Revision: 1326752
URL: http://svn.apache.org/viewvc?rev=1326752&view=rev
Log:
Apply patch to avoid calculating package space more than once. (FELIX-3465)
Modified:
felix/trunk/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
Modified:
felix/trunk/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java
URL:
http://svn.apache.org/viewvc/felix/trunk/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java?rev=1326752&r1=1326751&r2=1326752&view=diff
==============================================================================
---
felix/trunk/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java
(original)
+++
felix/trunk/framework/src/main/java/org/apache/felix/framework/resolver/ResolverImpl.java
Mon Apr 16 19:16:58 2012
@@ -509,6 +509,12 @@ public class ResolverImpl implements Res
}
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();
Modified:
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
URL:
http://svn.apache.org/viewvc/felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java?rev=1326752&r1=1326751&r2=1326752&view=diff
==============================================================================
---
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
(original)
+++
felix/trunk/resolver/src/main/java/org/apache/felix/resolver/ResolverImpl.java
Mon Apr 16 19:16:58 2012
@@ -522,6 +522,12 @@ public class ResolverImpl implements Res
}
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();