Bug 545681 - UI Freeze of >800s in TargetEditor when opening editor
Change-Id: Ifa3cdcafe525784aaf6fe800304f45fb30639407
Signed-off-by: Vikas Chandra <Vikas.Chandra@in.ibm.com>
diff --git a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/targetdefinition/TargetEditor.java b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/targetdefinition/TargetEditor.java
index 15d7996..6a1b959 100644
--- a/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/targetdefinition/TargetEditor.java
+++ b/ui/org.eclipse.pde.ui/src/org/eclipse/pde/internal/ui/editor/targetdefinition/TargetEditor.java
@@ -1,5 +1,5 @@
/*******************************************************************************
- * Copyright (c) 2005, 2019 IBM Corporation and others.
+ * Copyright (c) 2005, 2021 IBM Corporation and others.
*
* This program and the accompanying materials
* are made available under the terms of the Eclipse Public License 2.0
@@ -595,19 +595,20 @@
fLocationTree.setInput(getTarget());
}
Job.getJobManager().cancel(getJobFamily());
- // delete profile
- try {
- P2TargetUtils.forceCheckTarget(getTarget());
- P2TargetUtils.deleteProfile(getTarget().getHandle());
- } catch (CoreException e) {
- PDEPlugin.log(e);
- }
+
String name = getTarget().getName();
if (name == null)
name = ""; //$NON-NLS-1$
Job resolveJob = new Job(NLS.bind(PDEUIMessages.TargetEditor_1, name)) {
@Override
protected IStatus run(IProgressMonitor monitor) {
+ // delete profile
+ try {
+ P2TargetUtils.forceCheckTarget(getTarget());
+ P2TargetUtils.deleteProfile(getTarget().getHandle());
+ } catch (CoreException e) {
+ PDEPlugin.log(e);
+ }
getTarget().resolve(monitor);
if (monitor.isCanceled()) {
return Status.CANCEL_STATUS;