diff options
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.ui.sdk/src/org/eclipse/equinox/internal/p2/ui/sdk/PreloadingRepositoryHandler.java')
-rw-r--r-- | bundles/org.eclipse.equinox.p2.ui.sdk/src/org/eclipse/equinox/internal/p2/ui/sdk/PreloadingRepositoryHandler.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/bundles/org.eclipse.equinox.p2.ui.sdk/src/org/eclipse/equinox/internal/p2/ui/sdk/PreloadingRepositoryHandler.java b/bundles/org.eclipse.equinox.p2.ui.sdk/src/org/eclipse/equinox/internal/p2/ui/sdk/PreloadingRepositoryHandler.java index e1f89a97a..e8a3822b0 100644 --- a/bundles/org.eclipse.equinox.p2.ui.sdk/src/org/eclipse/equinox/internal/p2/ui/sdk/PreloadingRepositoryHandler.java +++ b/bundles/org.eclipse.equinox.p2.ui.sdk/src/org/eclipse/equinox/internal/p2/ui/sdk/PreloadingRepositoryHandler.java @@ -77,6 +77,7 @@ abstract class PreloadingRepositoryHandler extends AbstractHandler { //cancel any load that is already running Job.getJobManager().cancel(LoadMetadataRepositoryJob.LOAD_FAMILY); final LoadMetadataRepositoryJob loadJob = new LoadMetadataRepositoryJob(getProvisioningUI()) { + public IStatus runModal(IProgressMonitor monitor) { SubMonitor sub = SubMonitor.convert(monitor, getProgressTaskName(), 1000); IStatus status = super.runModal(sub.newChild(500)); @@ -87,6 +88,12 @@ abstract class PreloadingRepositoryHandler extends AbstractHandler { } catch (OperationCanceledException e) { return Status.CANCEL_STATUS; } + if (shouldAccumulateFailures()) { + // If we are accumulating failures, don't return a combined status here. By returning OK, + // we are indicating that the operation should continue with the repositories that + // did load. + return Status.OK_STATUS; + } return status; } }; |