Make sure the thread list is updated before you set the stop reason
authorJim Ingham <jingham@apple.com>
Fri, 28 Jun 2019 17:57:19 +0000 (17:57 +0000)
committerJim Ingham <jingham@apple.com>
Fri, 28 Jun 2019 17:57:19 +0000 (17:57 +0000)
commit8864b4360aabfd3a99c396a8b31c9ec1644702a1
tree2ee2d2be93b56dab1f42ea4f3853c7ebf139c8bb
parent7108df964aa692a3333b9ba618d578daf34511d1
Make sure the thread list is updated before you set the stop reason
on a thread.  When talking to some older gdb-remote stubs, We were getting
a stop reason from the stop reply packet and setting it on the relevant
thread before we updated the full stop list.  That would get discarded when
the full list was updated.

Also, if you already have a thread list when you go to see if there is an
Operating System plugin, and you do indeed load a new OS plugin, you have to
re-fetch the thread list or it will only show the raw threads.

Differential Revision: https://reviews.llvm.org/D62887

llvm-svn: 364666
lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/TestRecognizeBreakpoint.py [new file with mode: 0644]
lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/gdbclientutils.py
lldb/packages/Python/lldbsuite/test/functionalities/gdb_remote_client/operating_system_2.py [new file with mode: 0644]
lldb/source/Plugins/Process/gdb-remote/ProcessGDBRemote.cpp
lldb/source/Target/Process.cpp