Commit graph

506 commits

Author SHA1 Message Date
Eric Pouech 944edd5068 winedump: Don't crash when dumping .dbg files.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-11-28 21:01:55 +01:00
Piotr Caban 9e74a249df winedump: Handle NULL in get_unicode_str. 2022-10-19 21:16:29 +02:00
Piotr Caban 0e49547c7a winedump: Add support for EMRI_METAFILE_EXT records. 2022-10-17 11:26:51 +02:00
Piotr Caban 893ac00873 winedump: Add prefix when dumping EMF files. 2022-10-17 11:26:51 +02:00
Piotr Caban 4d649c6232 winedump: Dump metafiles in EMF spool files. 2022-10-17 11:26:51 +02:00
Piotr Caban d745c8d4a0 winedump: Don't use static offset in dump_emfrecord. 2022-10-17 11:26:51 +02:00
Piotr Caban cf78df3612 winedump: Fix buffer overflow in debugstr_wn helper. 2022-10-17 11:26:51 +02:00
Piotr Caban cfbe32d557 winedump: Add initial EMF spool files support. 2022-10-17 11:26:50 +02:00
Eric Pouech a014f19bdd winedump: Dump PDB public symbols' stream.
Add relevant structures to include/mscvpdb.h.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-27 18:29:34 +02:00
Eric Pouech 805ffc8adb winedump: Dump global hash table out of PDB symbols' stream.
Introduce relevant structures in include/wine/msvcpdb.h.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-27 18:29:27 +02:00
Eric Pouech 76d97b6e8e winedump: Print signed integers with %d.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-13 22:07:22 +02:00
Eric Pouech 26f2b48a47 winedump: Harden reading PDB string table stream.
Introduce struct PDB_STRING_TABLE to describe string table's header.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-09-12 17:28:23 +02:00
Eric Pouech 437e73883b mscvpdb.h: Use bitfield for defrange's variable flag.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-07-12 22:51:29 +02:00
Eric Pouech eb14fad72a mscvpdb.h: Redefine property with bitfields.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-06-28 20:30:05 +02:00
Eric Pouech ba12b5ae88 winedump: Explore a bit more TPI hash elements.
Rename a couple of fields in PDB structures for clarity.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-06-28 20:24:18 +02:00
Alexandre Julliard 1e52895ef7 kernelbase: Implement IsNLSDefinedString().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-07 16:57:26 +02:00
Alexandre Julliard b956620d81 make_unicode: Add data for high Unicode planes in case mapping tables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-06-06 13:38:55 +02:00
Nikolay Sivov f2ee6b7c31 winedump: Add support for dumping UnloadedModuleListStream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-19 18:28:25 +02:00
Nikolay Sivov d50f7b02a9 winedump: Add support for ThreadInfoListStream stream.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:57 +02:00
Nikolay Sivov 0d89f67ea2 winedump: Add support for dumping handle data stream from minidumps.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:53 +02:00
Nikolay Sivov a9f9c1a696 winedump: Cleanup minidump output helpers.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:49 +02:00
Nikolay Sivov 38d7ea5c6f winedump: Output minidump streams in order they appear in the file.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-05-18 08:53:46 +02:00
Alexandre Julliard 4b865129a5 winedump: Build with nameless unions/structs.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard fdd0ad5939 winedump: Enable compilation with long types.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard 88c06077f8 winedump: Remove unused variables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard af54377eb6 winedump: Avoid using DWORD in private definitions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 21:42:20 +02:00
Alexandre Julliard e1e6d18a61 winedump: Fix some incorrect uses of Unix 'long' type.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 16:49:46 +02:00
Alexandre Julliard 53ab4c5385 include: Avoid Windows types in CodeView structure definitions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 16:01:54 +02:00
Alexandre Julliard 6f04c33c04 winedump: Add support for dumping locale.nls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-22 15:33:56 +02:00
Alexandre Julliard 6f1fd16f92 winedump: Add dumping of the .apiset PE section.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-18 11:03:22 +01:00
Alexandre Julliard 62f9bd39a2 tools: Consistently use xmalloc/xrealloc/xstrdup everywhere.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-08 20:24:14 +01:00
Alexandre Julliard f0cd33c69e include: Add support for defining Win32 types as 'long' where possible.
Add -DWINE_NO_LONG_TYPES to modules that still have compilation
warnings with long types.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 20:38:22 +01:00
Alexandre Julliard ae2693e2c4 include: Use long type by default in GUID definition.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-27 17:56:07 +01:00
Alexandre Julliard c562952f92 tools: Add a helper function to read the contents of a file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-19 10:57:30 +01:00
Eric Pouech a9c177464f winedump: Support dumping quad word values in enumerations.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-17 17:22:45 +01:00
Eric Pouech 25d2c954ad winedump: Define and dump POGO codeview record.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-15 20:01:04 +01:00
Eric Pouech 95c96399d8 winedump: Setup a context in symbol_dumper for S_SEPCODE.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-15 20:00:57 +01:00
Eric Pouech 8de547d3e6 winedump: Better handle display of nested symbol entries.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 20:16:04 +01:00
Eric Pouech 2447b0131b winedump: Properly indent multi lines symbol records.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 20:15:35 +01:00
Eric Pouech cdcf5b6f08 winedump: No longer print current function.
It's not really relevant when inline sites are present.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 20:15:27 +01:00
Eric Pouech c77db0064a winedump: Pass start offset when dumping symbols.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 20:15:17 +01:00
Eric Pouech f1e0753cdd winedump: Add some more codeview entries.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 20:14:51 +01:00
Eric Pouech 97c3c41732 winedump: Better detect whether IPI stream is present.
Old version of PDB files can have a stream #4 which is not an IPI stream
Available documentation isn't 100% clear about when IPI has been
introduced.
So decide that IPI is present when header of stream looks like a type
stream header.

Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-10 20:14:26 +01:00
Martin Storsjö aa256deedd winedump: Rewrite dumping of packed ARM unwind info.
This differs slightly from the official docs (which is clear in some
places, vague in others, and contradictory in some places), based
on actual observed behaviour.

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:56 +01:00
Martin Storsjö ae7979a42d winedump: Fix printing of the prologue version of the "ldr lr, [sp], #offset" opcode.
This isn't mentioned in the documentation (which only writes out the
instruction that is executed while unwinding, i.e. the mirror form of
it), but a prologue version of this instruction would look like this.

Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:55 +01:00
Martin Storsjö 22d2b61a64 winedump: Distinguish between 16 and 32 bit nop opcodes in ARM unwind data.
Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:55 +01:00
Martin Storsjö 825e8d8105 winedump: Print the whole multibyte unwind opcode for arm.
Signed-off-by: Martin Storsjö <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-09 22:02:55 +01:00
Eric Pouech 27b7a96d9b winedump: Fix computation of signed integers in codeview symbol's annotations.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-08 21:00:57 +01:00
Eric Pouech d33ff5d888 mscvpdb.h: Update some line number oriented definitions.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-02 20:32:51 +01:00
Eric Pouech 23fe1ad987 winedump: Also dump library name for a module.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-02 20:32:51 +01:00