Commit 983d02c0 authored by Rémi Bernon's avatar Rémi Bernon Committed by Alexandre Julliard

winedbg: Rewrite and simplify step / continue handlers.

The vCont handler used some overcomplicated logic, we only need to iterate over the actions and apply them on the matching threads that didn't match yet. Thanks to DBG_REPLY_LATER we can now continue/step any thread regardless of whether it is the one that raised the debug event. Just suspend all active threads after debug event is raised and resume them one by one, according to the gdb request. If the thread that raised the debug event should not be resumed, reply with DBG_REPLY_LATER. Signed-off-by: 's avatarRémi Bernon <rbernon@codeweavers.com> Signed-off-by: 's avatarAlexandre Julliard <julliard@winehq.org>
parent 7af48607
......@@ -207,6 +207,7 @@ struct dbg_thread
}* frames;
int num_frames;
int curr_frame;
BOOL suspended;
};
struct dbg_delayed_bp
......
......@@ -500,6 +500,7 @@ struct dbg_thread* dbg_add_thread(struct dbg_process* p, DWORD tid,
t->num_frames = 0;
t->curr_frame = -1;
t->addr_mode = AddrModeFlat;
t->suspended = FALSE;
snprintf(t->name, sizeof(t->name), "%04x", tid);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment