46 Commits

Author SHA1 Message Date
Alexandre Julliard
4441065182 winedbg: Fix pointer cast warnings on 64-bit. 2009-01-09 14:06:12 +01:00
Christian Costa
88cf37fd85 winedbg: Make frame numbers display starting from 0 so we match frame command. 2008-12-08 12:02:43 +01:00
Eric Pouech
5c8ad49158 winedbg: Use Unicode strings for all module references. 2008-10-20 13:52:44 +02:00
Alexandre Julliard
01b7667a1a programs: Convert source files to utf-8. 2008-10-18 19:22:19 +02:00
Eric Pouech
f7908160eb winedbg: Fixed bt all so that current process/thread isn't lost. 2008-01-14 13:37:40 +01:00
Francois Gouget
c4b1195c0c Assorted spelling fixes. 2007-10-23 18:20:27 +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
6744929428 winedbg: Win64 printf format fixes. 2006-12-20 14:57:08 +01:00
Eric Pouech
d6d8682d71 winedbg: Added some black magic to still handle register values on non
current frame for some of the registers we know of (frame pointer,
stack pointer).
2006-12-04 14:02: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
Peter Oberndorfer
9e30761951 winedbg: Print frame address instead of duplicated bare address in backtrace. 2006-10-18 12:35:20 +02:00
Eric Pouech
588a4422b0 winedbg: Fixed regression in gdb startup (especially gdb proxy). 2006-09-26 12:04:06 +02:00
Marcus Meissner
b3a72ad1dd Remove some more unused debugging channels. 2006-08-29 12:28:58 +02:00
Eric Pouech
84650ebbb2 winedbg: Native dbghelp can modify the passed debug context in StackWalk, so guard against it. 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
Ge van Geldorp
f0279726eb winedbg: Adjust the parameters of the backend read/write routines to
match those of ReadProcessMemory/WriteProcessMemory, since those are
the ones actually used.
2006-07-03 11:37:29 +02:00
Alexandre Julliard
d47dcbf05a winedbg: Avoid a crash when there's no backtrace to print. 2006-06-15 11:39:29 +02:00
Jonathan Ernst
360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Eric Pouech
bf8509d37c winedbg: Fixed regression for command 'bt all'.
Don't print 'process has terminated' message when detaching from a
process (or backtracing it).
2006-05-15 11:04:05 +02:00
Eric Pouech
348067a9bf winedbg: Add ability to reload a minidump.
- now recognize winedbg foo.mdmp on command line
- fleshed out tgt_minidump to reload information from minidump
2006-03-02 11:49:41 +01:00
Eric Pouech
5ca519705d winedbg: Added a close_process method to process_io.
- added a close_process method to process_io
- made use of it to get rid of dbg_detach
2006-02-28 12:07:23 +01:00
Eric Pouech
804cd257f6 winedbg: Fixed regression: stack info was no longer working. 2006-02-20 11:03:33 +01:00
Eric Pouech
a7ff2f671c winedbg: A couple of fixes after running valgrind. 2006-02-16 12:06:43 +01:00
Eric Pouech
2ce5eca6a5 winedbg: Added support for function parameters passed in registers.
Added correct stabs parsing for function parameters in registers.
Added a couple of helper functions to make code smaller and more
readable.
2006-02-06 11:27:32 +01:00
Eric Pouech
9d0b5f5372 winedbg: Added a more decent scheme for handling segmented addresses. 2006-01-23 16:26:40 +01:00
Eric Pouech
30121124b9 winedbg: fixed regression (and simplified code!) for arguments
printing in backtrace.
2005-12-03 18:02:49 +01:00
Eric Pouech
c238ec520f Replaced stack_get_frame with a pure symbol (and no longer stackframe)
oriented API (stack_get_current_symbol).
Reused the func name (stack_get_frame) for internal stack.c handling.
2005-11-29 11:24:04 +01:00
Eric Pouech
ae6239d53d Centralized calls for SymSetContext, we only do it when we change the
current stack frame, and no longer every time we look up local symbols
on current stack
2005-11-18 16:27:55 +00:00
Eric Pouech
a81afd15d8 Move print_func_and_args to stack.c, where it belongs. 2005-11-18 15:04:44 +00:00
Eric Pouech
3e07e04764 - now storing frames information in thread structure
- frames are cached after each thread stops execution
- reimplemented backtrace on top of this
2005-11-18 12:33:03 +00:00
Robert Shearman
0c9195c650 Remove additional current process tracking in backtrace_all as it can
refer to freed memory.
2005-07-14 10:14:44 +00:00
Eric Pouech
333addd264 Rewrote all stack backtrace code (more code sharing, easier to follow,
and less bugs).
2005-05-29 20:03:56 +00:00
Eric Pouech
29a70954f9 - no longer store internally the " for strings
- misc clean-ups
- activate symbol demangling by default
2005-05-23 09:51:44 +00:00
Alexandre Julliard
827a69f8ca Avoid referencing stackframe.h from outside kernel32. 2005-05-16 14:20:16 +00:00
Alexandre Julliard
3f7f290b0b Fixed a few regressions in the handling of segmented addresses. 2005-03-03 14:10:17 +00:00
Eric Pouech
499cff6f26 Cleanup of dbghelp.h (and a couple of definition fixes). The
displacements (in most of the functions) are not optional.
2005-01-31 11:34:59 +00:00
Michael Stefaniuc
5ad7d858e0 Do not check for non NULL pointer before HeapFree'ing it. It's
redundant.
2004-12-23 17:06:43 +00:00
Robert Shearman
abfcc0bdad Limit StackWalk iterations to prevent infinite loop. 2004-11-06 03:44:44 +00:00
Robert Shearman
e4e7186b25 Fix debugger for flat PC and non-flat frame. 2004-09-23 04:27:46 +00:00
Eric Pouech
926f66186f - fixed breakpoint enabled/disabled state management
- fixed recursion in type printing
- now all type-id are stored with the base address of the module which
  defines the type (struct dbg_type takes care of this pairing)
- fixed a couple of bugs in display handling
- fixed strings print and examination
2004-08-22 22:35:36 +00:00
Eric Pouech
3b8805fca0 Fixed regression on 'bt <tid>' command. 2004-07-12 19:48:04 +00:00
Mike Hearn
48210fc3e4 Add a --command option to winedbg, add an "all" option to the
backtrace command.
2004-06-23 00:10:02 +00:00
Eric Pouech
4e0b582903 Fix compile error on non-i386. 2004-06-22 02:06:37 +00:00
Eric Pouech
deca2502d6 - all symbol information storage is now module relative, so we can
unload a module (and it's debugging information), and a process
  without pain
- portabiblity to another CPU should be easier now (CPU dependent backend)
- speed up memory allocation
- stabs related fixes:
      + now correctly handling symbol's size
      + blocks {} in functions are now correctly recognized and stored
        (also applies to local variables scoping)
      + better basic types management (less wild guesses in the code)
      + full support of inline functions (source stepping now shows the
        code in .h files for example)
- removal of external debugger (attaching with gdb is just fine to
  debug winedbg)
- fixed a couple of issues for symbol address handling (address
  lookup, incorrect type binding)
- winedbg now has a man page
2004-06-04 00:59:16 +00:00
Eric Pouech
48f97983d7 - get rid of winedbg internal channels for output
- move all standard (old MESG channel) output to stdout
- move all other outputs (TRACE, WARN...) to a new wine debugging
  channel (winedbg)
- replaced quite a few #ifdef:ed out output to new channels (mainly in
  symbol management area...)
- added a new maintenance commands to ease up debugging
- updated documentation accordingly
2003-12-15 19:53:08 +00:00
Alexandre Julliard
f264bd326b Moved the debugger to programs/winedbg where it belongs. 2002-09-13 17:54:27 +00:00