diff options
authorTobias Oberlies2013-01-31 08:53:10 -0500
committerTobias Oberlies2013-01-31 08:54:55 -0500
commitf15ea56fe69a93ab634617f20f02ef686131618e (patch)
parent83d55acceb92feca52de502b8a7c9e9da4240b58 (diff)
398066 Restored narrow path in ProductAction used by the PDEv20130131-135455
- Restoring the strange behaviour - just read the comment that attempts to explain it - needed by PDE UI (see bug 398066) and the PDE tests (see bug 390361 comment #3). I don't see a problem that we keep this behaviour because it is only relevant in case a caller (like the PDE) choose to ignore the status code. - The ProductAction still treats cases as fatal (returning an error status) where it would either have to ignore parts of the product file or guess the platform filters of bundles. Bug: 398066
1 files changed, 5 insertions, 2 deletions
diff --git a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/ b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/
index f0e1785..650f1dd 100644
--- a/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/
+++ b/bundles/org.eclipse.equinox.p2.publisher.eclipse/src/org/eclipse/equinox/p2/publisher/eclipse/
@@ -187,8 +187,11 @@ public class ProductAction extends AbstractPublisherAction {
// if the bundle is platform specific we will have broken metadata due to a missing filter
finalStatus.add(new Status(IStatus.ERROR, Activator.ID, NLS.bind(Messages.message_cannotDetermineFilterOnInclusion, element.getId(), elementVersion)));
- // best effort guess for callers who choose to ignore this problem
- result.add(new VersionedId(element.getId(), elementVersion));
+ // preserve legacy behaviour for callers who choose to ignore the error status:
+ // include element without filter, but only if there was an IVersionAdvice with "no advice" for this bundle (see bug 398066)
+ if (elementVersion != null) {
+ result.add(new VersionedId(element.getId(), elementVersion));
+ }
return result;