diff -r 836209352efb -r 02546d4fbe6d GDBThreadGroup.st --- a/GDBThreadGroup.st Thu Jan 24 21:59:23 2019 +0000 +++ b/GDBThreadGroup.st Mon Jan 28 14:56:14 2019 +0000 @@ -214,14 +214,25 @@ | thread frame | thread := self threadWithId:aGDBThreadSelectedEvent threadId. + frame := aGDBThreadSelectedEvent frame. + aGDBThreadSelectedEvent setThread: thread. - "/ Be carefull, thread may be rinning!! - (thread isStopped and:[(frame := aGDBThreadSelectedEvent frame) notNil]) ifTrue:[ + "/ Be carefull, thread may be running!! + (thread isStopped and:[frame notNil]) ifTrue:[ aGDBThreadSelectedEvent setFrame: (thread stack at: (frame level + 1)) + ] ifFalse:[ + "/ If it is running, at least fixup it's frame, if there's any (it may not + "/ if the thread is running at the time of =thread-select event. + "/ Uff, so many cases... + frame notNil ifTrue:[ + frame + setDebugger: debugger; + setThread: thread. + ]. ]. "Created: / 29-07-2018 / 22:21:48 / Jan Vrany " - "Modified: / 16-01-2019 / 23:25:23 / Jan Vrany " + "Modified: / 26-01-2019 / 23:35:58 / Jan Vrany " ! ! !GDBThreadGroup methodsFor:'initialization'!