Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJeff McAffer2008-02-27 04:46:00 +0000
committerJeff McAffer2008-02-27 04:46:00 +0000
commit43db829d409281d665cdf69a7faac4c76a6347f6 (patch)
treec0114582e3491a6edd9ef6be3a7ba5d25a1f80a1
parentd22bf5b9a9f68cfa188de36714a38923cfe70a1c (diff)
downloadrt.equinox.p2-43db829d409281d665cdf69a7faac4c76a6347f6.tar.gz
rt.equinox.p2-43db829d409281d665cdf69a7faac4c76a6347f6.tar.xz
rt.equinox.p2-43db829d409281d665cdf69a7faac4c76a6347f6.zip
fix NPE in the case of unmet optional constraintsv20080227
-rw-r--r--bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java6
1 files changed, 5 insertions, 1 deletions
diff --git a/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java b/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java
index b5583fd5a..d7b24fd92 100644
--- a/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java
+++ b/bundles/org.eclipse.equinox.frameworkadmin.equinox/src/org/eclipse/equinox/internal/frameworkadmin/equinox/EquinoxBundlesState.java
@@ -489,7 +489,11 @@ public class EquinoxBundlesState implements BundlesState {
ImportPackageSpecification[] imports = bundle.getImportPackages();
for (int i = 0; i < imports.length; i++) {
BaseDescription supplier = imports[i].getSupplier();
- set.add(supplier.getSupplier());
+ if (supplier == null) {
+ if (!imports[i].getDirective(Constants.RESOLUTION_DIRECTIVE).equals(ImportPackageSpecification.RESOLUTION_OPTIONAL))
+ throw new IllegalStateException("Internal error: import supplier should not be null");
+ } else
+ set.add(supplier.getSupplier());
// System.out.println(supplier.getSupplier());
}
BundleDescription[] requires = bundle.getResolvedRequires();

Back to the top