AFAICS stepping, continuing and breaking with Ctrl-C now work. Thread selection, registers and backtrace should now be correct even with multiple threads.
Breakpoints are working when using explicit addresses but debug information is apparently still wrong sometimes, so breaking into source or function do not work reliably yet. Watchpoints are still not implemented.
Rémi Bernon (15): server: Wait before suspending threads in APC. ntdll: Support DBG_REPLY_LATER event continuation. winedbg: Support using lldb as frontend. winedbg: Add snscanf function to safely parse packets. winedbg: Cleanup extract_packets for faster acking. winedbg: Cleanup return for kill and status packets. winedbg: Support partial qXfer replies. winedbg: Support qXfer:features:read request. winedbg: Support qXfer:libraries:read request. winedbg: Support qXfer:threads:read request. winedbg: Support QStartNoAckMode to reduce verbosity. winedbg: Fix register read/write handlers. winedbg: Rewrite and simplify vCont request handler. winedbg: Improve continue/step packets implementation. winedbg: Use tid for other/exec thread operations.
dlls/ntdll/signal_arm.c | 8 +- dlls/ntdll/signal_arm64.c | 15 +- dlls/ntdll/signal_i386.c | 15 +- dlls/ntdll/signal_powerpc.c | 8 +- dlls/ntdll/signal_x86_64.c | 12 +- include/ntstatus.h | 1 + include/winnt.h | 1 + programs/winedbg/debugger.h | 2 + programs/winedbg/gdbproxy.c | 1017 ++++++++++++++++++++--------------- programs/winedbg/winedbg.c | 1 + server/thread.c | 5 + server/thread.h | 1 + 12 files changed, 625 insertions(+), 461 deletions(-)