Skip to main content
aboutsummaryrefslogtreecommitdiffstats
path: root/dsf
diff options
context:
space:
mode:
authorMarc Khouzam2014-07-04 17:33:17 +0000
committerMarc Khouzam2014-07-07 14:22:39 +0000
commitbb3fd559c9d81b929adc4080b3bcab0f7781a77e (patch)
tree91ec7c4e4c5d88aec5712ed88e43b5fa570cb378 /dsf
parent875e21efb09bf13ce4c04e894e906a44cd9e11d5 (diff)
downloadorg.eclipse.cdt-bb3fd559c9d81b929adc4080b3bcab0f7781a77e.tar.gz
org.eclipse.cdt-bb3fd559c9d81b929adc4080b3bcab0f7781a77e.tar.xz
org.eclipse.cdt-bb3fd559c9d81b929adc4080b3bcab0f7781a77e.zip
Bug 344739 - RejectedExecutionException when terminating a PDA launch
Change-Id: I28cdfcd9aef6c7ece39c29b82459825698dc71bc Signed-off-by: Marc Khouzam <marc.khouzam@ericsson.com> Reviewed-on: https://git.eclipse.org/r/29488
Diffstat (limited to 'dsf')
-rw-r--r--dsf/org.eclipse.cdt.examples.dsf.pda.ui/src/org/eclipse/cdt/examples/dsf/pda/ui/PDAAdapterFactory.java1
-rw-r--r--dsf/org.eclipse.cdt.examples.dsf.pda/src/org/eclipse/cdt/examples/dsf/pda/launch/PDALaunch.java9
2 files changed, 9 insertions, 1 deletions
diff --git a/dsf/org.eclipse.cdt.examples.dsf.pda.ui/src/org/eclipse/cdt/examples/dsf/pda/ui/PDAAdapterFactory.java b/dsf/org.eclipse.cdt.examples.dsf.pda.ui/src/org/eclipse/cdt/examples/dsf/pda/ui/PDAAdapterFactory.java
index 4bd0b575f82..d78413542e8 100644
--- a/dsf/org.eclipse.cdt.examples.dsf.pda.ui/src/org/eclipse/cdt/examples/dsf/pda/ui/PDAAdapterFactory.java
+++ b/dsf/org.eclipse.cdt.examples.dsf.pda.ui/src/org/eclipse/cdt/examples/dsf/pda/ui/PDAAdapterFactory.java
@@ -48,6 +48,7 @@ public class PDAAdapterFactory implements IAdapterFactory
if (session == null) return null;
SessionAdapterSet adapterSet = PDAUIPlugin.getDefault().getAdapterSet(launch);
+ if (adapterSet == null) return null;
// Returns the adapter type for the launch object.
if (adapterType.equals(IElementContentProvider.class)) return adapterSet.fViewModelAdapter;
diff --git a/dsf/org.eclipse.cdt.examples.dsf.pda/src/org/eclipse/cdt/examples/dsf/pda/launch/PDALaunch.java b/dsf/org.eclipse.cdt.examples.dsf.pda/src/org/eclipse/cdt/examples/dsf/pda/launch/PDALaunch.java
index 5af41839c3e..b15042d4972 100644
--- a/dsf/org.eclipse.cdt.examples.dsf.pda/src/org/eclipse/cdt/examples/dsf/pda/launch/PDALaunch.java
+++ b/dsf/org.eclipse.cdt.examples.dsf.pda/src/org/eclipse/cdt/examples/dsf/pda/launch/PDALaunch.java
@@ -245,7 +245,6 @@ implements ITerminate
DsfSession.endSession(fSession);
// endSession takes a full dispatch to distribute the
// session-ended event, finish step only after the dispatch.
- fExecutor.shutdown();
fireTerminate();
rm.setStatus(getStatus());
@@ -262,4 +261,12 @@ implements ITerminate
Platform.getAdapterManager().loadAdapter(this, adapter.getName());
return super.getAdapter(adapter);
}
+
+ @Override
+ public void launchRemoved(ILaunch launch) {
+ if (this.equals(launch)) {
+ fExecutor.shutdown();
+ }
+ super.launchRemoved(launch);
+ }
}

Back to the top