diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses_7_0.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses_7_0.java index bae825ede26..4fe9950005d 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses_7_0.java +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses_7_0.java @@ -8,6 +8,7 @@ * Contributors: * Ericsson - initial API and implementation * Onur Akdemir (TUBITAK BILGEM-ITI) - Multi-process debugging (Bug 237306) + * John Dallaway - GDB 7.x MI thread details field ignored (Bug 325556) *******************************************************************************/ package org.eclipse.cdt.dsf.gdb.service; @@ -655,7 +656,14 @@ public class GDBProcesses_7_0 extends AbstractDsfService if (getData().getThreadList().length != 0) { MIThread thread = getData().getThreadList()[0]; if (thread.getThreadId().equals(threadDmc.getId())) { - threadData = new MIThreadDMData("", thread.getOsId()); //$NON-NLS-1$ + String id = thread.getOsId(); + // append thread details (if any) to the thread ID + // as for GDB 6.x with CLIInfoThreadsInfo#getOsId() + final String details = thread.getDetails(); + if (details != null && details.length() > 0) { + id += " (" + details + ")"; //$NON-NLS-1$ //$NON-NLS-2$ + } + threadData = new MIThreadDMData("", id); //$NON-NLS-1$ } }