Commit Graph

406 Commits

Author SHA1 Message Date
Andrew Talbot 159672d01c dbghelp: Remove unneeded casts. 2008-01-02 12:38:41 +01:00
Andrey Turkin a38cd7ac01 dbghelp: Treat const addresses as const unsigned.
This will prevent winedbg from spamming about __wine_dbch__default.
2007-12-26 14:02:22 +01:00
Andrey Turkin 33df0a7605 dbghelp: Adjust minidump streams ordering and sizing.
To more closely match native format; this is required for windbg.
2007-12-23 13:55:22 +01:00
Detlef Riekenberg efb13b28df Assorted spelling fixes. 2007-12-08 19:55:39 +01:00
Andrew Talbot f2223dbe79 dbghelp: Remove unneeded casts. 2007-12-05 12:04:48 +01:00
Vitaliy Margolen dfe21d0ef5 dbghelp: Fix detection of ELF libs by their name. 2007-10-29 13:58:35 +01:00
Andrey Turkin 4c8e88df7e dbghelp: Avoid crashing on files with bogus export table. 2007-10-10 11:18:26 +02:00
Francois Gouget a399e3bcc4 dbghelp: Fix the PENUMLOADED_MODULES_CALLBACK() prototype. 2007-09-18 11:21:21 +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
Andrew Talbot f8198e6688 dbghelp: Cast-qual warnings fix. 2007-07-20 11:46:04 +02:00
Michael Stefaniuc f59c8a688f dbghelp: Remove superfluous casts of void pointers to other pointer types. 2007-06-27 12:53:40 +02:00
Francois Gouget 96c337f0a1 Assorted spelling fixes. 2007-06-07 19:24:32 +02:00
Peter Oberndorfer b19fa1d282 dbghelp: Minor cleanup. 2007-05-17 12:44:50 +02:00
Markus Amsler 6f8a67f018 dbghelp: Late init hash_table. 2007-05-15 20:20:07 +02:00
Markus Amsler 8bc839a816 dbghelp: Speed up vector iteration by directly using for(). 2007-05-15 20:19:53 +02:00
Markus Amsler a2968c8fab dbghelp: Speed up pool_alloc. Patch by Eric Pouech. 2007-05-15 20:19:36 +02:00
Markus Amsler f94127f2ca dbghelp: Speed up vector_add by avoiding pool_realloc calls. Remove no longer needed pool_realloc. 2007-05-15 20:19:28 +02:00
Andrew Talbot dcb298b468 dbghelp: Exclude unused headers. 2007-05-01 11:42:24 +02:00
Andrey Turkin 234babeaf0 dbghelp: Zero-terminate module name in minidump. 2007-04-30 13:33:40 +02:00
Michael Stefaniuc 5f62da109e janitorial: Pass HEAP_ZERO_MEMORY as flag to HeapAlloc() instead of zeroing out the allocated memory in a later call. 2007-04-25 12:26:07 +02:00
Alexandre Julliard 9583c1137b dbghelp: Don't print garbage chars in ERR message. 2007-04-23 15:11:58 +02:00
Andrew Talbot a224fdb14e dbghelp: Constify some variables. 2007-04-20 13:04:11 +02:00
Andrew Talbot 645d76f889 dbghelp: Constify some variables. 2007-04-19 11:56:30 +02:00
Andrew Talbot 099bb87feb dbghelp: Constify some variables. 2007-04-18 13:00:57 +02:00
Andrew Talbot 6a23efdaa2 dbghelp: Replace inline static with static inline. 2007-03-21 16:02:57 +01:00
Alexandre Julliard b677e81d8f dbghelp: Avoid some warnings on Solaris. 2007-03-17 20:05:34 +01:00
Peter Oberndorfer debcf7fa32 dbghelp: Use elf load_offset passed to dwarf2_parse to relocate addresses.
This is needed, because symbol addresses in dwarf2 debug info are already relocated.
2007-03-16 11:35:00 +01:00
Peter Oberndorfer 25203bd87e dbghelp: Fix up load_offset to work in case the load offset is different for real binary and debug link file. 2007-03-16 11:34:47 +01:00
Peter Oberndorfer 7bbb212050 dbghelp: Initialize the elf_section_map in case of failures in elf_find_section.
Make sidx signed so sidx < 0 comparisons work.
(most of the patch written by Eric Pouech)
2007-03-16 11:34:33 +01:00
Eric Pouech f1436139fc dbghelp: Rewrote SymEnumerateModules with Unicode basis, and implemented SymEnumerateModulesW64. 2007-03-14 22:43:58 +01:00
Eric Pouech 9a0e666733 dbghelp: Renamed pe_load_module (resp pe_load_module_from_pcs)
to pe_load_native_module (resp pe_load_builtin_module) to better describe
what those functions actually do.
2007-03-13 21:07:47 +01:00
Eric Pouech f2cfb374a4 dbghelp: Get rid of module_name in all traces (using Unicode flavor). 2007-03-13 21:02:42 +01:00
Eric Pouech ade919c603 dbghelp: Cleanups for module loading (lookups on module name and image name are two different things)
- split up module_find_by_name in two different functions:
  + reused module_find_by_name which looks upon the module name
  + added module_is_already_loaded which looks upon the image name
- cleanup module loading using these functions (removed extra parameter
  to pe_load_module_from_pcs)
2007-03-13 20:58:08 +01:00
Eric Pouech 59f93f64b7 dbghelp: Rewrote module_is_elf_container_loaded so that it no longer
uses the stored ModuleName (that the dbghelp's caller can override) but rather a
combination of base address and filename for the module.
2007-03-13 20:54:21 +01:00
Eric Pouech a6a57c934c dbghelp: Added helper to get the basename + extension from full filename. 2007-03-13 20:52:58 +01:00
Francois Gouget 7b89fb5e35 dbghelp: Check file handles against INVALID_HANDLE_VALUE, not NULL. 2007-03-08 21:31:00 +01:00
Eric Pouech f4e129ab81 dbghelp: Fixes for loading circular references on function signature. 2007-03-05 12:15:31 +01:00
Eric Pouech ccf0be8e57 dbghelp: Implemented SymEnumTypesW. 2007-03-05 12:15:16 +01:00
Eric Pouech e161dd92ee dbghelp: Handle the .gnu_debuglink files with the newly added alternate mechanism. 2007-02-26 14:39:52 +01:00
Eric Pouech fc66bb37f4 dbghelp: Allow to add an alternate file_map for an ELF file (where to look for its debug information). 2007-02-26 14:39:38 +01:00
Eric Pouech 62b57f9e21 dbghelp: Rewrote the ELF section mapper for better data encapsulation. 2007-02-26 14:39:16 +01:00
Eric Pouech 8d3167cc9a dbghelp: Merge the A/W of elf_map_file into a single one. 2007-02-22 12:34:09 +01:00
Eric Pouech 0c1e33bb06 dbghelp: Now load the .gnu_debuglink file using Unicode search paths. 2007-02-22 12:33:37 +01:00
Eric Pouech 4aab161297 dbghelp: Added helper to map a Unicode file. 2007-02-22 12:33:14 +01:00
Eric Pouech 3565d93ebe dbghelp: Now moving the ELF loading code to Unicode. 2007-02-22 12:32:17 +01:00
Eric Pouech c1269392e0 dbghelp: Move elf_fetch_file_info to Unicode. 2007-02-22 12:29:53 +01:00
Eric Pouech 039d54a4bf dbghelp: Make elf_enum_modules a Unicode function. 2007-02-22 12:29:27 +01:00
Eric Pouech 89bc65695f dbghelp: Now storing module internal info for minidumps in Unicode. 2007-02-22 12:28:59 +01:00
Eric Pouech c0fa60f547 dbghelp: A few fixes related to Unicode translation. 2007-02-22 12:27:39 +01:00
Eric Pouech 1690cf1815 dbghelp: Moved the internals for registered callback to Unicode. 2007-02-22 12:27:16 +01:00
Eric Pouech 180127dd94 dbghelp: Get rid of temporary module_get_type_by_nameA. 2007-02-22 12:27:00 +01:00
Eric Pouech 2f0ed90c4e dbghelp: Implemented SymFindFileInPathW. 2007-02-22 12:26:16 +01:00
Eric Pouech 9e1f9ec19e dbghelp: Implemented SearchTreeForFileW. 2007-02-22 12:22:26 +01:00
Eric Pouech c0be0032de dbghelp: Implemented EnumDirTreeW. 2007-02-22 12:22:05 +01:00
Eric Pouech 8b861202ba dbghelp: Implemented SymMatchFileNameW. 2007-02-22 12:21:40 +01:00
Eric Pouech d707fe5ac3 dbghelp: Added module_get_type_by_name in Unicode form and keep the ANSI form for compatibility. 2007-02-22 12:21:14 +01:00
Eric Pouech 46684a9fb6 dbghelp: Moved ELF module loading interfaces to Unicode.
The core the code remains ANSI, as all the information is stored as ANSI.
2007-02-22 12:20:03 +01:00
Eric Pouech 6a859fb0e6 dbghelp: Move PE module loading to Unicode. 2007-02-22 11:41:15 +01:00
Eric Pouech bcc1913354 dbghelp: Implemented FindExecutableImage[W]. 2007-02-22 11:39:52 +01:00
Eric Pouech 43dffcd05d dbghelp: Now storing module information in Unicode form. 2007-02-22 11:39:08 +01:00
Eric Pouech 6efc061992 dbghelp: .gnu_link support: rewrote helper functions for better later unicodification. 2007-02-22 11:35:21 +01:00
Eric Pouech c75fb89a64 dbghelp: Prepare module loading functions to be switched to Unicode module storage. 2007-02-22 11:34:20 +01:00
Eric Pouech 50de2e2e4a dbghelp: Make the module info functions ready for the Unicode move. 2007-02-22 11:33:06 +01:00
Eric Pouech fcd3972fa8 dbghelp: Rewrote the loaded modules enumeration so that Unicode version is the core. 2007-02-22 11:32:05 +01:00
Eric Pouech aac77c98a2 dbghelp: Added an ANSI copy of the module name (useful for next patches). 2007-02-22 11:28:53 +01:00
Eric Pouech 33c8ffc301 dbghelp: Added helper to define the module's name. 2007-02-22 11:28:13 +01:00
Rob Shearman 272d7ab46a dbghelp: ImageName is usually blank, so print LoadedImageName in elf_load_debug_info_map. 2007-02-21 19:49:43 +01:00
Eric Pouech fa9be99568 dbghelp: MiniDumpWriteDump called from exception handler.
- MiniDumpWriteDump was unable to provide stack information for the current
  thread, hence did produce unusable minidump when a programs generates the
  minidump from its own exception handler.
- We now support this if the current thread calls MiniDumpWriteDump from an
  exception handler and provides the exception information.
2007-02-20 20:31:01 +01:00
Marcus Meissner e37ff84eff dbghelp: Return when not finding the name. 2007-02-19 12:37:37 +01:00
Rob Shearman 3f8215d214 dbghelp: nread can be NULL for read_mem and read_mem64. 2007-02-15 19:15:35 +01:00
Dmitry Timoshkov 736743dd57 dbghelp: Turn a FIXME to a WARN in order to avoid mangling the output. 2007-02-05 12:30:00 +01:00
Francois Gouget e10222ced7 dbghelp: Fix the spec file to better match the SymGetSymFromAddr64() prototype.
This fixes a winapi_check warning.
2007-01-25 11:05:24 +01:00
Frank Richter 867ebe4da0 dbghelp: Search for .gnu_debuglink file. 2007-01-17 11:40:10 +01:00
Eric Pouech 2e34ea4e01 dbghelp: Removed unneeded code from rewrite of .gnu_link handling. 2007-01-15 13:00:17 +01:00
Frank Richter afc2df8705 dbghelp: Split gnu_debuglink handling into own function. 2007-01-12 11:24:06 +01:00
Eric Pouech c6e8c2aab1 dbghelp: Handling of S_SALIGN symbols. 2007-01-06 11:40:45 +01:00
Eric Pouech bbef1cbd2d winedump: Removed cvinclude.h. 2007-01-06 11:40:44 +01:00
Eric Pouech 1b158dd38d dbghelp: Corrected the map/unmap operations for ELF sections.
Now correctly free the mapped areas when no longer used.
2007-01-06 11:40:44 +01:00
Eric Pouech 883732281e dbghelp: Implemented 64 bit versions of EnumerateLoadedModules. 2007-01-04 11:12:13 +01:00
Andrew Talbot 3af121230b dbghelp: Qualify use of WINE_DEFAULT_DEBUG_CHANNEL. 2007-01-02 13:21:15 +01:00
Dmitry Timoshkov e7d620081f dbghelp: Make some data const. 2006-12-14 20:11:07 +01:00
Eric Pouech 9a41a4e984 dbghelp: Sparse array speed up. 2006-12-11 12:15:34 +01:00
Alexandre Julliard 5feef7e329 dbghelp: Avoid a printf format warning. 2006-12-08 11:39:32 +01:00
Eric Pouech 75033503e8 dbghelp: Added ability to internal store / reload a symbol with a constant value.
Let dwarf and msc use this new feature.
As we also add global symbol without addresses, don't take those
constant symbols into account for searches by address.
2006-12-06 11:38:43 +01:00
Eric Pouech a1a879363d dbghelp: Added a field to the hash table to store the number of elements in the hash table.
Make use of it to get rid to module_compute_num_syms.
2006-12-06 11:37:38 +01:00
Eric Pouech 4806320b48 dbghelp: In find_nearest, now return the symbol instead of its index in module->sorttable. 2006-12-06 11:37:10 +01:00
Eric Pouech 08712bc3a9 dbghelp: Simplify the way we find the debug header. 2006-12-06 11:36:59 +01:00
Thomas Fitzsimmons 4b30ece829 dbghelp: Recognize DT_GNU_HASH. 2006-12-05 11:49:15 +01:00
Eric Pouech 16db2566c6 dbghelp: Fixed value stored for register relative information
(regression spotted by Peter Oberndorfer).
2006-12-04 14:02:42 +01:00
Eric Pouech 753055f93f dbghelp: Now that symbol's value computation depend on instruction
pointer value, be sure to always store it (spotted by Peter
Oberndorfer).
2006-12-04 14:02:18 +01:00
Pierre d'Herbemont c20afad608 dbghelp: Fix elf_load_module params on non elf system to reflect last change to its definition. 2006-12-04 12:19:22 +01:00
Eric Pouech 8e7b2e0fd7 dbghelp: Get rid of long int issues on 64bit platforms. 2006-11-30 13:26:39 +01:00
Eric Pouech 0bee33e195 mscvpdb.h: Update some definitions (constants, structures) with latest information we have. 2006-11-30 12:55:10 +01:00
Eric Pouech cc65d21f82 dbghelp: Moved mscvpdb.h file to include/wine to allow sharing of the definitions with winedump. 2006-11-30 12:54:54 +01:00
Eric Pouech 3669415dd5 dbghelp: Silence typedefs children in sub program block. 2006-11-27 18:10:24 +01:00
Eric Pouech 0dd7c44669 dbghelp: Removed the alpha status FIXME for the dwarf code. 2006-11-27 17:59:18 +01:00
Eric Pouech 5b61db4161 dbghelp: Correctly store the addresses of blocks.
They are stored internally as offsets to the start of the function
which embeds the block.
2006-11-27 17:58:44 +01:00
Eric Pouech 31f4f1b003 dbghelp: Properly handle the void type in some declarations. 2006-11-27 17:58:22 +01:00
Eric Pouech cfd9013317 dbghelp: We can now remove the default name prefix as all the non conforming cases have been eliminated.
Got rid of dwarf2_find_name which is now useless.
2006-11-27 17:58:11 +01:00
Eric Pouech 305621d5cf dbghelp: Extend support for inlined functions and handle them as generic blocks inside functions
(except for parameters which are converted into local variables).

Rewrote dwarf2_find_attribute so that it takes into account the
abstract origin information when available.

A+
2006-11-27 17:57:54 +01:00