Bug 578667 - Preparing a new p2 installation while a running p2
installation runs results now in an exception
Guard calls that compute the JRE compatibility when there is a null
change request.
Change-Id: I1b426dcfd4bf9e75d86449e92edad4019ef2ca36
Signed-off-by: Ed Merks <ed.merks@gmail.com>
Reviewed-on: https://git.eclipse.org/r/c/equinox/rt.equinox.p2/+/190676
Tested-by: Equinox Bot <equinox-bot@eclipse.org>
diff --git a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/ProvisioningOperationWizard.java b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/ProvisioningOperationWizard.java
index 7147955..47901c6 100644
--- a/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/ProvisioningOperationWizard.java
+++ b/bundles/org.eclipse.equinox.p2.ui/src/org/eclipse/equinox/internal/p2/ui/dialogs/ProvisioningOperationWizard.java
@@ -204,7 +204,7 @@
if (!operation.hasResolved()) {
operation.resolveModal(monitor);
}
- if (operation.hasResolved()) {
+ if (operation.getProfileChangeRequest() != null) {
this.localJRECheckPlan = ProvUI.toCompabilityWithCurrentJREProvisioningPlan(operation, null);
if (!compatibleWithCurrentEE()) {
couldNotResolveStatus = localJRECheckPlan.getStatus();
@@ -215,6 +215,10 @@
return false;
}
}
+ if (localJRECheckPlan == null) {
+ return true;
+ }
+
IStatus currentEEPlanStatus = localJRECheckPlan.getStatus();
if (currentEEPlanStatus.getSeverity() != IStatus.ERROR) {
return true;
@@ -337,7 +341,8 @@
try {
runnableContext.run(true, true, monitor -> {
operation.resolveModal(monitor);
- if (getPolicy().getCheckAgainstCurrentExecutionEnvironment()) {
+ if (operation.getProfileChangeRequest() != null
+ && getPolicy().getCheckAgainstCurrentExecutionEnvironment()) {
this.localJRECheckPlan = ProvUI.toCompabilityWithCurrentJREProvisioningPlan(operation, monitor);
if (!compatibleWithCurrentEE()) {
couldNotResolveStatus = localJRECheckPlan.getStatus();