Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThomas Watson2015-05-21 12:59:48 +0000
committerThomas Watson2015-05-21 13:10:20 +0000
commit2e359683d0064e3bc331ed25677c8fea128cbfee (patch)
treecfa3cb11d78555b2e5aa69b9b81a60acedb5b751 /bundles/org.eclipse.osgi/felix/src
parent0e623adb069fb1c33c63edf1322b1debc8ed87e8 (diff)
downloadrt.equinox.framework-2e359683d0064e3bc331ed25677c8fea128cbfee.tar.gz
rt.equinox.framework-2e359683d0064e3bc331ed25677c8fea128cbfee.tar.xz
rt.equinox.framework-2e359683d0064e3bc331ed25677c8fea128cbfee.zip
Bug 467797 - Dynamic package resolution with fragment exported packagesI20150521-1100
may lead to invalid wirings Change-Id: I36e9c529c38f958d91d69d0bdbdb15904b335ebe Signed-off-by: Thomas Watson <tjwatson@us.ibm.com>
Diffstat (limited to 'bundles/org.eclipse.osgi/felix/src')
-rw-r--r--bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java
index 8ab895c8d..9b290dfd3 100644
--- a/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java
+++ b/bundles/org.eclipse.osgi/felix/src/org/apache/felix/resolver/Candidates.java
@@ -589,13 +589,15 @@ class Candidates
// as a mandatory revision.
m_mandatoryResources.add(resource);
- // Add the dynamic imports candidates.
- add(req, candidates);
-
// Process the candidates, removing any candidates that
// cannot resolve.
ResolutionException rethrow = processCandidates(rc, resource, candidates);
+ // Add the dynamic imports candidates.
+ // Make sure this is done after the call to processCandidates since we want to ensure
+ // fragment candidates are properly hosted before adding the candidates list which makes a copy
+ add(req, candidates);
+
if (candidates.isEmpty())
{
if (rethrow == null)

Back to the top