diff options
author | Pawel Piech | 2010-05-27 16:40:14 +0000 |
---|---|---|
committer | Pawel Piech | 2010-05-27 16:40:14 +0000 |
commit | c48835544de8e08e71cbdd9c19a1e35e3427b6fb (patch) | |
tree | b4f73248c09afc43e38ac087598e7b4d4aae9314 /dsf/org.eclipse.cdt.dsf | |
parent | 3c7225052b6c486834b3afb779d5beaeb6f31de8 (diff) | |
download | org.eclipse.cdt-c48835544de8e08e71cbdd9c19a1e35e3427b6fb.tar.gz org.eclipse.cdt-c48835544de8e08e71cbdd9c19a1e35e3427b6fb.tar.xz org.eclipse.cdt-c48835544de8e08e71cbdd9c19a1e35e3427b6fb.zip |
Bug 314258 - [console] Cannot have both stdout in console and in file
Diffstat (limited to 'dsf/org.eclipse.cdt.dsf')
-rw-r--r-- | dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/model/DsfLaunch.java | 54 |
1 files changed, 7 insertions, 47 deletions
diff --git a/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/model/DsfLaunch.java b/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/model/DsfLaunch.java index e708918a6bb..a6d09ee7804 100644 --- a/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/model/DsfLaunch.java +++ b/dsf/org.eclipse.cdt.dsf/src/org/eclipse/cdt/dsf/debug/model/DsfLaunch.java @@ -10,11 +10,7 @@ *******************************************************************************/ package org.eclipse.cdt.dsf.debug.model; -import org.eclipse.core.runtime.IProgressMonitor; -import org.eclipse.core.runtime.IStatus; -import org.eclipse.core.runtime.Status; -import org.eclipse.core.runtime.jobs.ISchedulingRule; -import org.eclipse.core.runtime.jobs.Job; +import org.eclipse.debug.core.DebugPlugin; import org.eclipse.debug.core.ILaunchConfiguration; import org.eclipse.debug.core.Launch; import org.eclipse.debug.core.model.ISourceLocator; @@ -35,27 +31,6 @@ public class DsfLaunch extends Launch { */ private static final String PREF_SHOW_FULL_PATHS = "org.eclipse.cdt.debug.ui.cDebug.show_full_paths"; //$NON-NLS-1$ - private class EventSchedulingRule implements ISchedulingRule { - - DsfLaunch fLaunch = DsfLaunch.this; - - public boolean isConflicting(ISchedulingRule rule) { - if (rule instanceof EventSchedulingRule) { - return fLaunch.equals( ((EventSchedulingRule)rule).fLaunch ); - } - return false; - } - - public boolean contains(ISchedulingRule rule) { - if (rule instanceof EventSchedulingRule) { - return fLaunch.equals( ((EventSchedulingRule)rule).fLaunch ); - } - return false; - } - }; - - private EventSchedulingRule fEventSchedulingRule = new EventSchedulingRule(); - public DsfLaunch(ILaunchConfiguration launchConfiguration, String mode, ISourceLocator locator) { super(launchConfiguration, mode, locator); @@ -67,34 +42,19 @@ public class DsfLaunch extends Launch { @Override protected void fireChanged() { - new Job("Dispatch DSF Launch Changed event.") { //$NON-NLS-1$ - { - setSystem(true); - setRule(fEventSchedulingRule); - } - - @Override - protected IStatus run(IProgressMonitor monitor) { + DebugPlugin.getDefault().asyncExec(new Runnable() { + public void run() { DsfLaunch.super.fireChanged(); - return Status.OK_STATUS; } - - }.schedule(); + }); } @Override protected void fireTerminate() { - new Job("Dispatch DSF Launch Terminate event.") { //$NON-NLS-1$ - { - setSystem(true); - setRule(fEventSchedulingRule); - } - - @Override - protected IStatus run(IProgressMonitor monitor) { + DebugPlugin.getDefault().asyncExec(new Runnable() { + public void run() { DsfLaunch.super.fireTerminate(); - return Status.OK_STATUS; } - }.schedule(); + }); } } |