From ee264353d0e1d9c9627272de6b5f5df5ab1ed808 Mon Sep 17 00:00:00 2001 From: midipix Date: Mon, 16 Sep 2019 06:02:20 +0000 Subject: mgdb: winnt_wait(): handle __DBG_STATE_{CREATE_PROCESS|DLL_LOAD|DLL_UNLOAD}. --- overlay/mgdb/gdb/winnt-nat.c | 20 +++++++++++++++++--- 1 file changed, 17 insertions(+), 3 deletions(-) diff --git a/overlay/mgdb/gdb/winnt-nat.c b/overlay/mgdb/gdb/winnt-nat.c index c3a3297..5ce4a4c 100644 --- a/overlay/mgdb/gdb/winnt-nat.c +++ b/overlay/mgdb/gdb/winnt-nat.c @@ -848,17 +848,31 @@ static ptid_t winnt_wait( winnt_respond(pfd,event,__DBG_RESPONSE_CONTINUE); break; + case __DBG_STATE_CREATE_PROCESS: + waitstatus->kind = TARGET_WAITKIND_SPURIOUS; + waitstatus->value.integer = 0; + break; + case __DBG_STATE_EXIT_PROCESS: waitstatus->kind = TARGET_WAITKIND_EXITED; waitstatus->value.integer = *event->process_exit_code; winnt_respond(pfd,event,__DBG_RESPONSE_CONTINUE); break; - case __DBG_STATE_CREATE_PROCESS: - case __DBG_STATE_IDLE: - case __DBG_STATE_REPLY_PENDING: case __DBG_STATE_DLL_LOAD: + waitstatus->kind = TARGET_WAITKIND_LOADED; + waitstatus->value.integer = 0; + winnt_get_modules(process); + break; + case __DBG_STATE_DLL_UNLOAD: + waitstatus->kind = TARGET_WAITKIND_LOADED; + waitstatus->value.integer = 0; + winnt_get_modules(process); + break; + + case __DBG_STATE_IDLE: + case __DBG_STATE_REPLY_PENDING: waitstatus->kind = TARGET_WAITKIND_SPURIOUS; waitstatus->value.integer = 0; break; -- cgit v1.2.3