1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-06-07 17:56:01 +02:00

Bug 313372: Re-create the CLIEventProcessor when we restart the program, so as to reset the internal threadId count.

This commit is contained in:
Marc Khouzam 2010-05-18 15:25:45 +00:00
parent 2917e52f08
commit 34caecd0e1

View file

@ -103,12 +103,12 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
private IGDBBackend fMIBackend; private IGDBBackend fMIBackend;
private boolean fConnected = false; private boolean fConnected;
private MIRunControlEventProcessor fMIEventProcessor; private MIRunControlEventProcessor fMIEventProcessor;
private CLIEventProcessor fCLICommandProcessor; private CLIEventProcessor fCLICommandProcessor;
private AbstractCLIProcess fCLIProcess; private AbstractCLIProcess fCLIProcess;
private MIInferiorProcess fInferiorProcess = null; private MIInferiorProcess fInferiorProcess;
private PTY fPty; private PTY fPty;
@ -383,6 +383,14 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
} else { } else {
fInferiorProcess = new GDBInferiorProcess(GDBControl.this, fMIBackend, fPty); fInferiorProcess = new GDBInferiorProcess(GDBControl.this, fMIBackend, fPty);
} }
// Create the CLI event processor each time this method is called
// to reset the internal thread id count
// Bug 313372
if (fCLICommandProcessor != null) {
fCLICommandProcessor.dispose();
}
fCLICommandProcessor = new CLIEventProcessor(GDBControl.this, fControlDmc);
} }
public boolean isConnected() { public boolean isConnected() {
@ -537,7 +545,6 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
createInferiorProcess(); createInferiorProcess();
fCLICommandProcessor = new CLIEventProcessor(GDBControl.this, fControlDmc);
fMIEventProcessor = new MIRunControlEventProcessor(GDBControl.this, fControlDmc); fMIEventProcessor = new MIRunControlEventProcessor(GDBControl.this, fControlDmc);
requestMonitor.done(); requestMonitor.done();