mirror of
https://github.com/eclipse-cdt/cdt
synced 2025-08-10 17:55:39 +02:00
Fix for 68226
This commit is contained in:
parent
0396ced3b7
commit
315a4fc293
4 changed files with 33 additions and 13 deletions
|
@ -1,3 +1,10 @@
|
||||||
|
2004-06-24 Alain Magloire
|
||||||
|
|
||||||
|
Fix 68226
|
||||||
|
* cdi/org/eclipse/cdt/debug/mic/core/cdi/EventManager.java
|
||||||
|
* cdi/org/eclipse/cdt/debug/mic/core/cdi/Configuration.java
|
||||||
|
* cdi/org/eclipse/cdt/debug/mic/core/cdi/SoourceManager.java
|
||||||
|
|
||||||
2004-06-22 Alain Magloire
|
2004-06-22 Alain Magloire
|
||||||
|
|
||||||
Fix PR 68176
|
Fix PR 68176
|
||||||
|
|
|
@ -136,9 +136,8 @@ public class Configuration implements ICDIConfiguration {
|
||||||
// FIXME: bug in Solaris gdb when using -tty, sending a control-c
|
// FIXME: bug in Solaris gdb when using -tty, sending a control-c
|
||||||
// does not work.
|
// does not work.
|
||||||
return false;
|
return false;
|
||||||
} else {
|
|
||||||
return true;
|
|
||||||
}
|
}
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
|
@ -425,6 +425,15 @@ public class EventManager extends SessionObject implements ICDIEventManager, Obs
|
||||||
if (currentThread instanceof Thread) {
|
if (currentThread instanceof Thread) {
|
||||||
tid = ((Thread)currentThread).getId();
|
tid = ((Thread)currentThread).getId();
|
||||||
}
|
}
|
||||||
|
// Select the old thread now.
|
||||||
|
if (tid > 0) {
|
||||||
|
MIThreadSelect selectThread = factory.createMIThreadSelect(tid);
|
||||||
|
try {
|
||||||
|
mi.postCommand(selectThread);
|
||||||
|
} catch (MIException e) {
|
||||||
|
// ignore
|
||||||
|
}
|
||||||
|
}
|
||||||
ICDIStackFrame frame = null;
|
ICDIStackFrame frame = null;
|
||||||
try {
|
try {
|
||||||
frame = currentThread.getCurrentStackFrame();
|
frame = currentThread.getCurrentStackFrame();
|
||||||
|
@ -451,13 +460,6 @@ public class EventManager extends SessionObject implements ICDIEventManager, Obs
|
||||||
// level of the old stack. The -1 is because gdb level is zero-based
|
// level of the old stack. The -1 is because gdb level is zero-based
|
||||||
miLevel = count - frame.getLevel() - 1;
|
miLevel = count - frame.getLevel() - 1;
|
||||||
}
|
}
|
||||||
if (tid > 0) {
|
|
||||||
MIThreadSelect selectThread = factory.createMIThreadSelect(tid);
|
|
||||||
try {
|
|
||||||
mi.postCommand(selectThread);
|
|
||||||
} catch (MIException e) {
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (miLevel >= 0) {
|
if (miLevel >= 0) {
|
||||||
MIStackSelectFrame selectFrame = factory.createMIStackSelectFrame(miLevel);
|
MIStackSelectFrame selectFrame = factory.createMIStackSelectFrame(miLevel);
|
||||||
MIExecFinish finish = factory.createMIExecFinish();
|
MIExecFinish finish = factory.createMIExecFinish();
|
||||||
|
@ -465,6 +467,18 @@ public class EventManager extends SessionObject implements ICDIEventManager, Obs
|
||||||
mi.postCommand(selectFrame);
|
mi.postCommand(selectFrame);
|
||||||
mi.postCommand(finish);
|
mi.postCommand(finish);
|
||||||
} catch (MIException e) {
|
} catch (MIException e) {
|
||||||
|
// ignore
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
// if we are still at the same level in the backtrace
|
||||||
|
// for example the StopEventLib was on a different thread
|
||||||
|
// redo the last command.
|
||||||
|
Command cmd = lastUserCommand;
|
||||||
|
lastUserCommand = null;
|
||||||
|
try {
|
||||||
|
mi.postCommand(cmd);
|
||||||
|
} catch (MIException e) {
|
||||||
|
// ignore
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
|
|
@ -305,13 +305,13 @@ public class SourceManager extends Manager implements ICDISourceManager {
|
||||||
// GDB has some special types for int
|
// GDB has some special types for int
|
||||||
if (typename.equals("int8_t")) { //$NON-NLS-1$
|
if (typename.equals("int8_t")) { //$NON-NLS-1$
|
||||||
return new CharType(target, typename);
|
return new CharType(target, typename);
|
||||||
} else if (typename.equals("int16_t")) { //$NON-NLS-$1
|
} else if (typename.equals("int16_t")) { //$NON-NLS-1$
|
||||||
return new ShortType(target, typename);
|
return new ShortType(target, typename);
|
||||||
} else if (typename.equals("int32_t")) { //$NON-NLS-$1
|
} else if (typename.equals("int32_t")) { //$NON-NLS-1$
|
||||||
return new LongType(target, typename);
|
return new LongType(target, typename);
|
||||||
} else if (typename.equals("int64_t")) { //$NON-NLS-$1
|
} else if (typename.equals("int64_t")) { //$NON-NLS-1$
|
||||||
return new IntType(target, typename);
|
return new IntType(target, typename);
|
||||||
} else if (typename.equals("int128_t")) { //$NON-NLS-$1
|
} else if (typename.equals("int128_t")) { //$NON-NLS-1$
|
||||||
return new IntType(target, typename);
|
return new IntType(target, typename);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue