Commit Graph

42 Commits

Author SHA1 Message Date
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