Commit graph

69 commits

Author SHA1 Message Date
Eric Pouech
433bc12709 winedbg: Fix read access to variables with thread local storage.
No longer relying on loaded module info (getting index address out of
PE image, and caching it in struct dbg_module).

Co-authored-by: Evan Tang <etang@codeweavers.com>
2023-01-26 22:05:13 +01:00
Eric Pouech
001665d735 winedbg: Enhance printing of variables or fields.
Prints 'int a[10]' (instead of 'int[10] a').
Ditto for variables/fields of type function pointer.

And for pure type printing, no longer prints --none-- for
arrays and function pointers.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-30 21:20:28 +02:00
Eric Pouech
a596da54f6 winedbg: Correctly read register values through dbg_lvalue structure.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-02 11:39:10 +02:00
Eric Pouech
b0319099d0 winedbg: Enable compilation with long types.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-07 10:59:53 +01:00
Eric Pouech
ef3fca0c33 winedbg: Revamp dbg_lvalue structure and add helpers for init.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-08 22:14:44 +01:00
Eric Pouech
d81e757075 winedbg: Use %ls to print wide character strings.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:55 +01:00
Eric Pouech
0c474b9fc2 winedbg: When enumerating symbols, only search for locals when name doesn't refer to a module.
Fixed listing twice the same symbol in some commands like 'break foo!bar'.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:54 +01:00
Eric Pouech
5b54dac338 winedbg: Use macros when manipulating variants.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 22:08:55 +01:00
Eric Pouech
d65edd04cc winedbg: Use I width modifier for DWORD_PTR printf's args.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-26 22:08:54 +01:00
Eric Pouech
8852004170 winedbg: Use SymSetScopeFromAddr() instead of SymSetContext().
This allows to simplify a bit the frame internal storage
(no longer using IMAGEHLP_STACK_FRAME structure).

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-27 22:40:50 +02:00
Eric Pouech
01ddc2f8e4 winedbg: Use proper width when printing addresses with leading 0.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-12 18:41:06 +02:00
Alexandre Julliard
0ea9fe999c winedbg: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 15:20:56 +02:00
Alexandre Julliard
b9046a4936 winedbg: Avoid using 'long' types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-04 14:50:41 +02:00
Zebediah Figura
ea753c384e include: Rename the other In*OrderModuleList fields to In*OrderLinks for consistency.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:49 +02:00
Zebediah Figura
09db718d99 include: Rename BaseAddress to DllBase.
To match Microsoft's public definition.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:46 +02:00
Zebediah Figura
feeb1c7c24 include: Rename LDR_MODULE to LDR_DATA_TABLE_ENTRY.
This name is used in Microsoft's public winternl.h.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:39 +02:00
Alistair Leslie-Hughes
101820d01a dbghelp: Use internal flag for loading native files.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-10 12:29:30 +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
Thomas Faber
e91c06b068 dbghelp: Use documented member name in SYMBOL_INFO structure.
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-03-22 12:20:58 +09:00
Francois Gouget
c4f7918801 winedbg: Remove unneeded NONAMELESSXXX directives. 2015-04-03 00:33:29 +09:00
Frédéric Delanoy
fe580c083d winedbg: Use BOOL type where appropriate. 2013-11-11 13:27:28 +01:00
Frédéric Delanoy
9e5367dbe3 winedbg: Use BOOL type where appropriate. 2013-10-14 10:44:41 +02:00
Eric Pouech
244099689c winedbg: In 'info locals' command, show the full register/stack layout for parameters & locals. 2012-06-25 10:33:05 +02:00
Frédéric Delanoy
a2e8d61453 winedbg: Remove dead assignment (Clang). 2011-08-05 09:17:31 +02:00
Eric Pouech
f9e1943de8 winedbg: Added support for variables with thread storage. 2011-01-31 14:30:26 +01:00
Eric Pouech
c22eaccd15 winedbg: Try to detect jump (potentially thunk code) while getting the status. 2011-01-10 13:03:52 +01:00
Eric Pouech
eef72ad2ff winedbg: Add some missing symbol flags to pick up local/parameters variables in symbol pickers. 2010-03-31 11:36:35 +02:00
Eric Pouech
4c661dc822 winedbg: Fix for stack symbols on 64bit platform. 2009-12-22 15:38:28 +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
Alexandre Julliard
ec73f0b71a winedbg: Fix a number of 64-bit pointer truncation issues. 2009-12-10 15:23:45 +01:00
Eric Pouech
700d9df414 winedbg: Properly manage Wine's dbghelp extensions for constant symbols which value is passed by ref. 2009-10-05 14:56:47 +02:00
Dylan Smith
6f0655242c winedbg: Fixed listing source of function in file. 2009-08-24 15:17:34 +02:00
Michael Stefaniuc
2e6ac3a571 winedbg: Remove some superfluous pointer casts. 2009-04-21 13:16:33 +02:00
Marcus Meissner
102a3b9892 winedbg: Check for buffer being NULL. 2009-02-02 15:21:43 +01:00
Vincent Povirk
8f6736cf13 winedbg: Fix string format warnings. 2008-12-05 12:30:22 +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
4c00325c3b winedbg: Rewrote the symbol picking mechanism so that it can handle several algorithms. 2008-11-11 11:40:17 +01:00
Eric Pouech
687a00c0af winedbg: Don't force integral values while displaying a stack value, it doesn't work for float/double values. 2008-08-18 14:34:10 +02:00
Francois Gouget
98d63f3435 dbghelp & imagehlp: Fix the PSYM_ENUMSYMBOLS_CALLBACK() and PSYM_ENUMERATESYMBOLS_CALLBACK() prototypes.
Tweak the actual callbacks to better match the prototypes.
2007-09-18 11:20:24 +02:00
Alexandre Julliard
55a57c2130 winedbg: Properly handle EOF on input. 2007-04-26 14:25:32 +02:00
Peter Oberndorfer
e879efcc74 winedbg: Do not write over const char * parameter.
Also pass the right string to SymEnumSymbols and check for _ in symbol
name, instead of beginning of string.
2007-03-08 11:58:17 +01:00
Alexandre Julliard
6744929428 winedbg: Win64 printf format fixes. 2006-12-20 14:57:08 +01:00
Eric Pouech
32a8b2fa59 winedbg: Added support for constant values passed by dbghelp. 2006-12-06 11:38:53 +01:00
Eric Pouech
a274689b09 winedbg: Dwarf can emit REGREL symbol information, so handle it.
Factorize a bit more some symbol handling code.
2006-12-04 14:03:19 +01:00
Eric Pouech
4c634078b3 winedbg: Remove some hassle from sgv_cb, and handle line number displacement where needed. 2006-12-04 14:01:38 +01:00
Eric Pouech
66cbe625d4 winedbg: No longer test filename in sgv_cb, but do it in the only place where we actually need it. 2006-12-04 14:01:02 +01:00
Eric Pouech
62f16d3cd4 winedbg: Various information printing issues.
- in backtraces, (void) functions should be listed with '()' as arguments instead of ''
- factorized code for diplaying information about a local/parameter
- fixed a couple of bugs here
- rewrote format specifiers for print commands (do no waste space for padding data)
- added support for new wine's dbghelp extension for local/parameter
  variables being out of scope
2006-11-27 18:06:41 +01:00
Eric Pouech
bd9ba7ec37 winedbg: Fixed the symbol lookup so that it can really find _foo when looking for foo. 2006-08-14 20:17:11 +02:00
Ge van Geldorp
1d04f826c7 winedbg: Change ADDRESS variables to ADDRESS64 so we can handle 64-bit addresses. 2006-07-26 15:21:42 +02:00