Commit Graph

117 Commits

Author SHA1 Message Date
Rémi Bernon 983d02c08e 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: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-01 22:13:07 +02:00
Damjan Jovanovic 8c52c17a08 winedbg: Allow changing the current thread.
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-18 22:14:53 +01:00
Jacek Caban 1bb98982d6 winedbg: Set auto attach event after processing the first exception.
On Windows, the process is broken into by ordering an actual debug
break execution in a new thread. We need to process this event before
continuing exception handling in debuggee to avoid race.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 20:43:19 +02:00
Jacek Caban 136a0ac49b winedbg: Move continue_on_first_exception handling out of dbg_attach_debuggee.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-07-02 20:43:19 +02:00
Michael Stefaniuc 962b31c80b include: Add a generic available ARRAY_SIZE().
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-07-04 10:39:15 +02:00
Zebediah Figura 1244759036 winedbg/gdbproxy: Store the register map inside the be_cpu struct.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-14 09:29:12 +02:00
Zebediah Figura 45e0654591 winedbg: Use WOW64_CONTEXT instead of CONTEXT for i386 backend.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Zebediah Figura 42bbeedbe4 winedbg: Make be_cpu process-specific.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-06-13 22:13:27 +02:00
Alexandre Julliard 21c12ddc64 ntdll: Fix CONTEXT definition for ARM64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:01 +01:00
Zebediah Figura ad79c1eed2 winedbg: Add support for printing SSE (XMM) registers.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-27 11:27:47 +02:00
Francois Gouget c4f7918801 winedbg: Remove unneeded NONAMELESSXXX directives. 2015-04-03 00:33:29 +09:00
Frédéric Delanoy 0f2bed51bd Assorted spelling fixes. 2014-02-10 15:47:29 +01:00
Frédéric Delanoy fe580c083d winedbg: Use BOOL type where appropriate. 2013-11-11 13:27:28 +01:00
Eric Pouech 88949b2c59 winedbg: Fix set instruction when sizeof(int) <> sizeof register. 2012-04-05 14:51:33 +02:00
Alexandre Julliard 9b7ca3cf87 winedbg: Display the crash details dialog from a separate thread so that it appears right away. 2012-01-18 12:55:24 +01:00
Alexandre Julliard dcd5643f74 winedbg: Add a dialog to display crash details and save them to a file. 2012-01-17 17:47:48 +01:00
Alexandre Julliard dea7ced7f1 winedbg: Split minidump option handling to a separate function. 2012-01-17 16:27:06 +01:00
Francois Gouget f8624006a7 winedbg: memory_get_current_frame() is not used anymore so remove it. 2011-03-30 18:23:40 +02:00
Alexandre Julliard 35d5c07538 winedbg: Support setting a breakpoint from a file name and line number. 2011-02-28 14:04:20 +01:00
Peter Schlaile 95a3cd8e30 winedbg: Adds an rwatch command to winedbg. 2010-12-06 12:21:16 +01:00
Eric Pouech 78cf0961e9 winedbg: Moved into a common function all code dealing with printing information about an exception, and use this function to implement new 'info exception' command. 2010-11-23 14:16:22 +01:00
Eric Pouech 9261ef2d0a winedbg: Rename 'info exception' into 'info frame' (which is somehow closer to what it does). 2010-11-23 14:16:22 +01:00
Andrew Eikum d3f80c1e9f winedbg: Allow user to specify length of stack info output. 2010-05-25 12:14:00 +02:00
Eric Pouech e4c29f9087 winedbg: Use standard Wine lists for threads. 2010-04-13 11:43:09 +02:00
Eric Pouech d9e42e87f2 winedbg: Use standard Wine lists for processes. 2010-04-13 11:42:57 +02:00
Eric Pouech 2becd3349d winedbg: Merge pointer deref and array index functions into a single one. 2010-04-13 11:42:34 +02:00
Eric Pouech 0d7a6f13a8 winedbg: Describe pointer size in CPU backend structure. 2010-04-13 11:42:18 +02:00
Eric Pouech 5f23b94a27 winedbg: Allow using 8-byte long hardware assisted breakpoints on x86_64 CPUs. 2010-04-07 13:50:57 +02:00
Eric Pouech d29c6ead92 winedbg: Store the CONTEXT in each stack frame to enable register access in the non topmost frames. 2010-03-31 11:36:23 +02:00
Eric Pouech ea21a32707 winedbg: Store for context variables only the offsets of each register (instead of the address of the register in dbg_context). 2010-03-29 11:40:00 +02:00
Eric Pouech 5aa859de72 winedbg: Allow internal (host) integral variables to hold 64bit value on 64bit platforms. 2009-12-15 11:55:41 +01:00
Eric Pouech 4ce6c90c36 winedbg: Fix some types for homogenous support on 64bit platform. 2009-12-15 11:55:17 +01:00
Eric Pouech 12c3a012cb winedbg: Force 64bit line number information throughout the code to ease 64bit portability. 2009-12-14 12:30:56 +01:00
Eric Pouech ab2e0bdef6 winedbg: Added a couple of tweaks to properly support 32bit vs 64bit wide addresses. 2009-12-14 12:30:33 +01:00
Eric Pouech 97d44dd399 dbghelp: Force 64bit module enumeration on all platforms. 2009-12-14 12:29:43 +01:00
Eric Pouech 7daa50c041 winedbg: Ensure all addresses passed to break functions are 64bit wide. 2009-12-14 12:29:35 +01:00
Eric Pouech 485280c64b winedbg: Enforce 64bit modules address on 64bit platforms. 2009-12-14 12:29:23 +01:00
Alexandre Julliard ec73f0b71a winedbg: Fix a number of 64-bit pointer truncation issues. 2009-12-10 15:23:45 +01:00
Alexandre Julliard c09ac7a41f winedbg: Use the explicit name for all A/W function. 2009-12-09 18:14:07 +01:00
Alexandre Julliard 8d0cb61bc7 winedbg: Add wrappers for Read/WriteProcessMemory to fix the mingw build. 2009-06-05 15:19:58 +02:00
Mikołaj Zalewski 1e256e426d winedbg: Add a crash dialog for --auto mode. 2009-04-22 17:00:34 +02:00
Francois Gouget 4061d1f8d8 winedbg: Make lexeme_alloc() static in debug.l. 2009-01-20 12:33:52 +01:00
Francois Gouget 5012a57268 winedbg: Make some functions static. 2009-01-20 12:33:47 +01:00
Eric Pouech 583e051044 winedbg: Added scoped symbol picker, and options to handle it. 2008-11-11 11:40:36 +01:00
Eric Pouech 508414313e winedbg: Slightly change the option setting syntax (allows also to get the current state back). 2008-11-11 11:40:26 +01:00
Eric Pouech 4c00325c3b winedbg: Rewrote the symbol picking mechanism so that it can handle several algorithms. 2008-11-11 11:40:17 +01:00
Eric Pouech cbb84fdb73 winedbg: Added a command to allow loading mismatched modules. 2008-10-20 13:53:08 +02:00
Eric Pouech 5c8ad49158 winedbg: Use Unicode strings for all module references. 2008-10-20 13:52:44 +02:00
Eric Pouech 6986975816 winedbg: Search default debuggee dir for symbol information. 2008-09-04 13:47:48 +02:00
Eric Pouech f7f9c08fc0 winedbg: Fixed the print_basic command when dealing with long long values. 2008-05-27 12:03:44 +02:00