Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Arthorne2013-04-19 18:50:45 +0000
committerJohn Arthorne2013-04-19 18:50:45 +0000
commit4eb009762982efe139889f9274591d3fbfc01dcc (patch)
treeca3c096b12475f3639dbee8c695d64ac9871ec2b
parenta9e8d3dcbcca0e59dbdaf704e317c4d6a9767943 (diff)
downloadrt.equinox.p2-4eb009762982efe139889f9274591d3fbfc01dcc.tar.gz
rt.equinox.p2-4eb009762982efe139889f9274591d3fbfc01dcc.tar.xz
rt.equinox.p2-4eb009762982efe139889f9274591d3fbfc01dcc.zip
Bug 404619 - ProfileSynchronizer.createProfileChangeRequest() changes all existing features into root unitsI20130423-0800
-rw-r--r--bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java10
1 files changed, 7 insertions, 3 deletions
diff --git a/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java b/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java
index cf3feb315..ddc3b2d1b 100644
--- a/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java
+++ b/bundles/org.eclipse.equinox.p2.reconciler.dropins/src/org/eclipse/equinox/internal/p2/reconciler/dropins/ProfileSynchronizer.java
@@ -578,12 +578,16 @@ public class ProfileSynchronizer {
// if the IU is already installed in the profile then check to see if it was moved.
String one = iu.getProperty(RepositoryListener.FILE_NAME);
String two = existing.getProperty(RepositoryListener.FILE_NAME);
- // if we have an IU which has been moved, keep track of it.
- //
// cheat here... since we always set the filename property for bundles in the dropins,
// if the existing IU's filename is null then it isn't from the dropins. a better
// (and more expensive) way to find this out is to do an IU profile property query.
- if (one != null && two != null && !one.equals(two)) {
+ if (two == null) {
+ // the IU is already installed so don't mark it as a dropin now - see bug 404619.
+ iter.remove();
+ continue;
+ }
+ // if we have an IU which has been moved, keep track of it.
+ if (one != null && !one.equals(two)) {
toMove.add(iu);
continue;
}

Back to the top