Commit Graph

432 Commits

Author SHA1 Message Date
Mike Ruprecht c7b204e98a winedbg: Fix typo in a comment. 2009-03-02 12:03:19 +01:00
Marcus Meissner 102a3b9892 winedbg: Check for buffer being NULL. 2009-02-02 15:21:43 +01: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
Alexandre Julliard 4441065182 winedbg: Fix pointer cast warnings on 64-bit. 2009-01-09 14:06:12 +01:00
Francois Gouget a9d3d0e942 winedbg: Remove an unused debug channel (winedbg). 2008-12-29 11:35:37 +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
Vincent Povirk 8f6736cf13 winedbg: Fix string format warnings. 2008-12-05 12:30:22 +01:00
Francois Gouget 9c5e97aa71 Assorted spelling fixes. 2008-11-24 14:25:10 +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
Michael Stefaniuc 880d944ea0 winedbg: Use FIELD_OFFSET instead of reimplementing it. 2008-11-03 13:40:20 +01:00
Eric Pouech 0c4e9df2a1 winedbg: Add a kill command to kill the current process. 2008-10-27 11:28: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
Alexandre Julliard 01b7667a1a programs: Convert source files to utf-8. 2008-10-18 19:22:19 +02:00
Florian Köberle 49c96a5075 winedbg: Fixed an infinite loop. 2008-09-12 11:39:52 +02:00
Eric Pouech a181ad5a2c winedbg: Also handle 1 byte signed int as they were char (PDB files are done like this... sigh). 2008-09-08 12:47:20 +02:00
Eric Pouech 6986975816 winedbg: Search default debuggee dir for symbol information. 2008-09-04 13:47:48 +02:00
Alexandre Julliard b3ec2e5f95 makefiles: Recurse into all directories for install-lib and install-dev too. 2008-08-25 14:27:03 +02: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
Gerald Pfeifer b15bcddeac winedbg: Fix the type of four loop variables and reduce scope of one. 2008-07-22 15:25:47 +02:00
Alexandre Julliard 28a2179dd6 Add noinput directive to all lex files to avoid a compiler warning. 2008-07-07 12:31:33 +02:00
Michael Stefaniuc 7057d7a914 winedbg: Fix "floating pointer" typo. 2008-06-24 11:51:20 +02:00
Jon Griffiths 9e62412dc1 winedbg: Add support for printing c++ bool values. 2008-06-18 16:48:17 +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
Eric Pouech 98e2486820 winedbg: Removed unneeded variable from print_basic. 2008-05-27 12:02:36 +02:00
Alexandre Julliard 2e83ea49be winedbg: Fix compile when poll() is not available. 2008-05-26 19:25:04 +02:00
Eric Pouech 2a771d294f winedbg: Fix the path traversal. 2008-05-13 10:40:08 +02:00
Eric Pouech bd6b394e84 winedbg: Added ability to print properly float/double values. 2008-05-01 18:11:26 +02:00
Eric Pouech 95f2d367b3 winedbg: Attach the source files to a given process, and unload them at process end. 2008-05-01 11:12:53 +02:00
Eric Pouech 5d90e60ed5 winedbg: Added implementation of qSupported request. 2008-05-01 11:12:24 +02:00
Eric Pouech 6f84b1c640 winedbg: Try harder to locate a source file. 2008-05-01 11:12:17 +02:00
Alexandre Julliard ef07d83405 Include wine/port.h everywhere we use exceptions. 2008-04-29 20:18:49 +02:00
Francois Gouget 8a18e0e43a Assorted spelling fixes. 2008-04-07 13:36:18 +02:00
Alexandre Julliard 41fbacefa1 Avoid the nounistd option that doesn't exist on older flex, define YY_NO_UNISTD_H instead. 2008-02-19 15:42:49 +01:00
Rob Shearman 878ea5d2e2 Add the nounistd option to all lex source files. 2008-02-19 13:39:25 +01:00
Alexandre Julliard a8b0a5ea91 winedbg: Avoid using size_t in an error message. 2008-02-18 14:10:03 +01:00
Rob Shearman a82f4dd9b7 Don't use GetExceptionCode and GetExceptionInformation in exception filter functions.
When using native compiler exceptions, it isn't valid to use 
GetExceptionCode and GetExceptionInformation anywhere other than in the 
filter or handler blocks since it would be very hard for the compiler to 
work out where to retrieve the exception information from on the stack.

Therefore, remove the WINE_EXCEPTION_FILTER and WINE_FINALLY_FUNC macros 
which enabled GetExceptionCode, GetExceptionInformation and 
AbnormalTermination to be used inside of the functions they declared and 
fix up all callers to access the information directly.
2008-02-16 14:57:44 +01:00
Eric Pouech 336c000d4e winedbg: Implemented the pXX request in gdb proxy. 2008-02-04 14:18:59 +01:00
Eric Pouech bce64150eb winedbg: Added a way to support differently selector information depending on current target. 2008-01-14 13:38:21 +01:00
Eric Pouech bd007a1576 winedbg: Workaround broken minidumps with invalid 32->64 address conversion. 2008-01-14 13:37:54 +01:00
Eric Pouech f7908160eb winedbg: Fixed bt all so that current process/thread isn't lost. 2008-01-14 13:37:40 +01:00
Gerald Pfeifer cdaf13052a winedbg: Warning fixes. 2007-11-29 15:34:45 +01:00
Gerald Pfeifer a6dd4795fa winedbg: Fix type of loop variable in types_udt_find_element(). 2007-11-16 13:23:48 +01:00
Alexandre Julliard c77bc840de winedbg: Print a backtrace in --auto mode. 2007-11-13 21:35:30 +01:00
Andrew Talbot d275a4d3af winedbg: Fix a memory leak. 2007-10-24 15:51:05 +02: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
Francois Gouget 9271fcc86d winedbg: 'winedbg --auto' and 'winedbg --minidump' should detach when done so as to not mess up the crashed process exit code. 2007-08-31 12:08:58 +02:00
Francois Gouget 6d1f931615 winedbg: Detach from the debuggee before exiting. 2007-08-31 12:08:58 +02:00
Francois Gouget 9d2f48dc0f dbghelp: Better match the PSDK types, especially with regards to constness.
Also add a number of missing prototypes, especially 64bit or Unicode
versions of existing prototypes, and the related structures.  Update
win32.api to fix the winapi_check warnings.
2007-08-03 12:43:40 +02:00
Michael Stefaniuc 9a522589fb programs: Remove unreachable break after return/break. Found by Smatch. 2007-07-19 11:57:53 +02:00
Alexandre Julliard 87fe0145c0 winedbg: Added support for indirect call with absolute address. 2007-06-18 17:21:07 +02:00
Dmitry Timoshkov e0510e42fe winedbg: Fix a problem revealed by compilation in 64-bit mode. 2007-05-24 11:36:36 +02:00
Peter Oberndorfer 394a36c25a winedbg: Only check for break/watch points on first chance exceptions. 2007-05-23 12:51:16 +02:00
Peter Oberndorfer 0bfb26aa99 winedbg: Show some info for msvcrt C++ exceptions. 2007-05-23 12:51:02 +02:00
Alexandre Julliard 55a57c2130 winedbg: Properly handle EOF on input. 2007-04-26 14:25:32 +02:00
Chris Robinson 449aacc125 winedbg: Align module addresses to 8 characters. 2007-04-09 12:18:55 +02:00
Eric Pouech 06b414086a winedbg, winedump: Extended some info printed from system info directory in minidump about the CPU. 2007-04-02 12:07:12 +02:00
Eric Pouech 0fc4013f7c winedbg: When reloading real PE modules from a minidump, also look in the search path (as we do for ELF modules). 2007-04-02 12:06:28 +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
Eric Pouech deaa366e4c winedbg: Forward the wShowWindow option from winedbg to the debuggee. 2007-03-06 12:11:18 +01:00
Eric Pouech e374bcffee winedbg: We no longer need to force for ELF modules in minidumps as we do it automatically now. 2007-03-06 12:11:13 +01:00
Eric Pouech cc3dd00c04 dbghelp: module target: Better error handling when init fails and creates a dummy thread. 2007-03-05 12:15:45 +01:00
Eric Pouech 90167f26d3 winedbg: When reloading a minidump, recreate all threads from the thread record (and not just the first one). 2007-03-05 12:14:58 +01:00
Eric Pouech dbe0610bb4 winedbg: Fix printing function signature type for circular references on return type. 2007-03-05 12:14:42 +01:00
Eric Pouech 51a9b2273b winedbg: Fix maint type when no process is active. 2007-03-05 12:14:22 +01:00
Eric Pouech 7694da86ab winedbg: Some enhancements by using Unicode flavors. 2007-02-22 12:28:17 +01:00
Eric Pouech b795f8735d winedbg: Support for debugging child processes.
Added internal flag (AlsoDebugProcChild) to let winedbg debug both
parent and child (in the same WineDbg session).
2007-02-12 13:59:53 +01:00
Eric Pouech 6cf2734574 winedbg: Correctly handle invalid read conditions. 2007-02-12 13:59:14 +01:00
James Hawkins 8be71fef5b winedbg: Check buffer for NULL before writing to it. 2007-01-11 12:04:51 +01:00
Eric Pouech b2557f25d9 winedbg: Added a maintenance command to load a given module (for debug purposes). 2007-01-04 11:12:06 +01:00
Alexandre Julliard 7035aa5041 make_makefiles: Generate the top-level .gitignore file.
Add a PROGRAMS variable in some makefiles to make things easier.
2006-12-27 21:23:36 +01:00
Alexandre Julliard 6744929428 winedbg: Win64 printf format fixes. 2006-12-20 14:57:08 +01:00
Alexandre Julliard 2bc33389e8 winedbg: Fixed a few data types. 2006-12-20 14:57:08 +01:00
Francois Gouget 367f91fb5c Assorted spelling fixes. 2006-12-14 20:25:05 +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 932ad65c83 winedbg: Now that local variable computation depends on instruction
pointer value, be sure to have the relevant insn ptr value when
fetching the stack frames (spotted by Peter Oberndorfer).
2006-12-04 14:03:04 +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 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 7ca25148f4 winedbg: Added basic support for printing 64bit wide entities. 2006-11-27 18:09:30 +01:00
Eric Pouech 135f2e1b79 winedbg: Host references lookup.
Since more and more information in now available through the CPU
registers, those require DLV_HOST access to be a bit better handled
than it is...
2006-11-27 18:07:00 +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 ec087dac4f winedbg: Added a few more cases where we inspect if i386 instructions
are actually calls (based on previous work by Jeff Latimer).
2006-10-23 12:27:00 +02:00
Peter Oberndorfer 9e30761951 winedbg: Print frame address instead of duplicated bare address in backtrace. 2006-10-18 12:35:20 +02:00
Francois Gouget 82babbee0b Add missing '\n's to Wine traces. 2006-10-05 17:46:48 +02:00
Eric Pouech 6a0568a11a winedbg: Rewrote the file handling to use SearchPath instead of home grown version. 2006-10-03 20:19:19 +02:00
Eric Pouech 28dc896b28 winedbg: Fixed the auto mode. 2006-10-03 11:54:36 +02:00
Peter Oberndorfer b480668942 winedbg: Don't try to read to invalid memory if winedbg does not find the thread. 2006-10-02 21:37:34 +02:00
Michael Stefaniuc 85ce5117c5 Add a WINE_NO_LONG_INT define to many makefiles to ease the transition of DWORD/LONG/ULONG from long to int. 2006-09-29 16:08:30 +02:00
Eric Pouech 588a4422b0 winedbg: Fixed regression in gdb startup (especially gdb proxy). 2006-09-26 12:04:06 +02:00
Eric Pouech e3f8799a42 winedbg: Put back the %d format for printing integral values even for
64bit internal values as the default format in winebdg command imposes.
2006-09-26 11:59:55 +02:00
Alexandre Julliard a27d0aa4e9 include: Added definitions for the fault address exception information. 2006-09-20 11:27:53 +02:00
Alexandre Julliard 32ab895e46 makefiles: Generate the dependencies line to avoid some code duplication. 2006-09-14 09:38:16 +02:00
Alexandre Julliard 1be6e9a6b1 winedbg: Change the prefix on bison-generated names to avoid the name-prefix directive. 2006-09-12 09:04:43 +02:00
Alexandre Julliard bcdc5fb55f Make.rules: Set the default prefix for bison files from the file basename. 2006-09-11 21:47:49 +02:00
Alexandre Julliard 145a0ba508 makefiles: List bison dependencies explicitly for parallel makes, since older bisons don't support --defines. 2006-09-11 21:43:11 +02:00
Alexandre Julliard 9c085cba0a makefiles: Add global rules for bison and lex files.
Also build the .c and .h files separately to allow parallel makes.
2006-09-09 13:16:22 +02:00
Alexandre Julliard dfd1abfa57 winedbg: Allow building without debug support in the parser. 2006-09-09 11:26:35 +02:00
Alexandre Julliard c58614fd2c winedbg: Specify the lex options directly in the source file. 2006-09-09 11:25:41 +02:00
Marcus Meissner b3a72ad1dd Remove some more unused debugging channels. 2006-08-29 12:28:58 +02:00
Eric Pouech 9766dd1a5f winedbg: Native dbghelp generate long basic types, so handle them too. 2006-08-28 11:40:58 +02:00
Stefan Huehner 803f3bd0a9 winedbg: Fix typo in manpage. 2006-08-23 16:54:28 +02:00
Eric Pouech 9e9f8af552 winedbg: Correctly protect system inclusion (needed for Mingw compilation). 2006-08-15 11:42:16 +02:00
Alexandre Julliard 1089260f29 configure: Only link against libpoll where really necessary. 2006-08-15 11:41:59 +02: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
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
Eric Pouech 588589b8de winedbg: Don't ask for module inspection when calling SymInitialize. 2006-08-14 20:17:11 +02:00
Stefan Leichter 7ee81d7b03 winedbg: Print 64bit integers with wine_dbgstr_longlong. 2006-08-14 11:45:25 +02:00
Alexandre Julliard 2886e9b0e8 makefiles: Use make dependencies to create installation directories.
This avoids a lot of redundant calls to mkinstalldirs.
2006-08-07 17:48:18 +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 ac857cb31a winedbg: Implement some x86_64 backend routines. 2006-07-11 12:40:11 +02:00
Alexandre Julliard 88c97d7284 .gitignore: Added wildcards to ignore lex and bison output files. 2006-07-10 21:40:49 +02:00
Alexandre Julliard 028ab92bf7 make_progs: Generate the .gitignore file.
Ignore generated programs from the top-level .gitignore.
2006-07-10 20:59:06 +02:00
Alexandre Julliard cc2b3b48e6 Take advantage of the recursive nature of .gitignore for Makefile entries.
Prefix other entries with '/' to make them non-recursive.
2006-07-10 20:47:54 +02:00
Ge van Geldorp a2e94444ad winedbg: Implement be_x86_64_init_registers. 2006-07-03 11:41:53 +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
Eric Pouech 6cff43fd72 winedbg: Module info.
when requesting info on a module by address, always print the module
ELF/PE pair (if this applies) (and not only the embedded PE), which
can be confusing.
2006-06-27 11:19:53 +02:00
Eric Pouech 82ed6a4578 winedbg: Use 64 bit version of imagehlp_module.
This allows reimplementing the module list command and do less black
magic to guess the ELF debug format.
2006-06-27 11:19:03 +02:00
Eric Pouech e79085258b winedbg: Proper handling of typedefs.
Added types_get_real_type() to get rid of typedef information, and
access the real underlying type.
2006-06-20 11:36:25 +02:00
Ge van Geldorp e08a176007 winedbg: Added x86_64 support. 2006-06-20 11:06:31 +02:00
Alexandre Julliard d47dcbf05a winedbg: Avoid a crash when there's no backtrace to print. 2006-06-15 11:39:29 +02:00
Alexandre Julliard 68090e5d68 winedbg: sscanf arguments should be ints, not size_t. 2006-06-13 14:16:06 +02:00
Andrew Talbot a7142d435b winedbg: Write-strings warnings fix. 2006-06-12 13:21:48 +02:00
Alexandre Julliard dbd566d545 Revert "winedbg: Remove useless NOCMD state."
This reverts 92deacbe42 commit.
2006-06-06 17:15:31 +02:00
Juan Lang b885b76146 winedbg: Get rid of unused mode command. 2006-06-05 21:01:40 +02:00
Juan Lang 92deacbe42 winedbg: Remove useless NOCMD state. 2006-06-05 13:50:23 +02:00
Eric Pouech 65da8987d5 winedbg: Correct typedefs in type manipulations. 2006-06-05 13:24:24 +02:00
Juan Lang a866fa37e9 winedbg: Fix a crash on initial empty input. 2006-06-03 11:58:34 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Eric Pouech 820141114e winedbg: extract_as_integer
- now supporting extract_as_integer on functions (so that, 
  for example, 'disas foo' works as expected)
- now properly handling errors when calling extract_as_integer
2006-05-17 10:41:41 +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
Petr Tesarik 68f8d28945 winedbg: Fix stepping over an instruction. 2006-03-27 12:14:20 +02:00
Eric Pouech f661e7a924 winedbg: Fixes for identifiers.
- fixed lexical rules for a path name
- fixed identifier rules so that we get the right precedence
  between ! and ::
- modules (in mod!name forms) are now handled as tIDENTIFIER
  (tPATH was buggy anyhow)
2006-03-27 11:30:50 +02:00
Jeff Latimer 0994126701 winedbg: Add display for floating point status.
Added code to examine and display floating point unit status into
be_i386.c as info all-regs command.
2006-03-21 16:30:47 +01:00
Jeff Latimer 18f5d0abdc winedbg: Copy floating point status to the dbgcontext. 2006-03-20 12:04:00 +01:00
Eric Pouech db90e17d92 dbghelp: Live target detection.
- DBGHELP_NOLIVE env variable is tested earlier to avoid 
  some strange effects in live target detection
- in WineDbg, delete DBGHELP_NOLIVE before attaching to
  a process, because we know it must be a live target
2006-03-18 18:05:38 +01:00
Petr Tesarik 315c4e78cb winedbg: Fix lcall instruction opcode. 2006-03-10 21:41:09 +01:00
Eric Pouech 81198f3971 winedbg: Bring usage() and .man up to date. 2006-03-02 11:55:12 +01: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 c918e80ed2 winedbg: process_io
- added ability to specify process_io at process creation/attachment
  time
- created a process_io structure for gdbproxy
2006-03-02 11:48:43 +01:00
Eric Pouech f29d084c37 winedbg: main_loop.
- split dbg_main_loop in two parts (one for finishing the debuggee
  attachment, the second one really for handling the main loop)
- removed now longer needed dbg_main_loop
2006-03-02 11:43:10 +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 4202c752d3 winedbg: Extend auto mode with minidump.
- added -minidump and -minidump <file> options to command line

Those options are to be used in remplacement of --auto to create a minidump
In the form --minidump <file>, the minidump will be created in <file>,
otherwise the filename will be automatically generated.
2006-02-28 12:06:33 +01:00
Eric Pouech 67001a1d8b winedbg: Rewrite auto mode.
- rewrote auto mode as a specific set of commands to be run in
  regular parser, instead of hard coding those commands
- added a new function to store a set of commands to be executed
  in a file
- added 'echo' command to the parser functions
- got rid of dbg_action_mode
- added support of '--' on command line
2006-02-28 12:05:15 +01:00
Eric Pouech 22ff946409 winedbg: Fixed regression in gdb handling. 2006-02-28 12:05:06 +01:00