From 6891ce8e0feaf8393c326643cdcd1d9149940a0a Mon Sep 17 00:00:00 2001 From: Mikhail Khodjaiants Date: Tue, 9 Jul 2013 11:10:50 -0400 Subject: [PATCH] Bug 412547 - Selection is lost when stepping over "pthread_create" for gdbserver sessions Change-Id: Ide875ba350dfd3e17579519360999b82c572c355 Reviewed-on: https://git.eclipse.org/r/14415 Reviewed-by: Mikhail Khodjaiants IP-Clean: Mikhail Khodjaiants Tested-by: Mikhail Khodjaiants --- .../service/command/output/MIThreadInfoInfo.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/MIThreadInfoInfo.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/MIThreadInfoInfo.java index 788291998b3..faa4597bfe1 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/MIThreadInfoInfo.java +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/output/MIThreadInfoInfo.java @@ -11,6 +11,8 @@ *******************************************************************************/ package org.eclipse.cdt.dsf.mi.service.command.output; +import java.util.Arrays; +import java.util.Comparator; /** @@ -143,6 +145,18 @@ public class MIThreadInfoInfo extends MIInfo { for (int i = 0; i < values.length; i++) { threadList[i] = MIThread.parse((MITuple) values[i]); } + Arrays.sort(threadList, new Comparator() { + + @Override + public int compare(MIThread o1, MIThread o2) { + try { + return Integer.parseInt(o1.getThreadId()) - Integer.parseInt(o2.getThreadId()); + } + catch(NumberFormatException e) { + return 0; + } + } + }); return threadList; } }