[PATCH 5/9] tools/winedump/pdb: dump also library name for a module
Eric Pouech
eric.pouech at gmail.com
Tue Nov 2 09:32:10 CDT 2021
Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
---
tools/winedump/pdb.c | 20 +++++++++++++-------
1 file changed, 13 insertions(+), 7 deletions(-)
diff --git a/tools/winedump/pdb.c b/tools/winedump/pdb.c
index bbaf1cb94e8..ed4877cd10a 100644
--- a/tools/winedump/pdb.c
+++ b/tools/winedump/pdb.c
@@ -468,18 +468,21 @@ static void pdb_dump_symbols(struct pdb_reader* reader, PDB_STREAM_INDEXES* sidx
{
int file_nr, symbol_size, lineno_size, lineno2_size;
const char* file_name;
-
+ const char* lib_name;
+
if (symbols->version < 19970000)
{
const PDB_SYMBOL_FILE* sym_file = (const PDB_SYMBOL_FILE*) file;
file_nr = sym_file->file;
file_name = sym_file->filename;
+ lib_name = file_name + strlen(file_name) + 1;
symbol_size = sym_file->symbol_size;
lineno_size = sym_file->lineno_size;
lineno2_size = sym_file->lineno2_size;
- printf("\t--------symbol file----------- %s\n", file_name);
- printf("\tgot symbol_file\n"
- "\t\tunknown1: %08x\n"
+ printf("\t--------symbol file-----------\n");
+ printf("\tName: %s\n", file_name);
+ if (strcmp(file_name, lib_name)) printf("\tLibrary: %s\n", lib_name);
+ printf("\t\tunknown1: %08x\n"
"\t\trange\n"
"\t\t\tsegment: %04x\n"
"\t\t\tpad1: %04x\n"
@@ -514,12 +517,16 @@ static void pdb_dump_symbols(struct pdb_reader* reader, PDB_STREAM_INDEXES* sidx
else
{
const PDB_SYMBOL_FILE_EX* sym_file = (const PDB_SYMBOL_FILE_EX*) file;
+
file_nr = sym_file->file;
file_name = sym_file->filename;
+ lib_name = file_name + strlen(file_name) + 1;
symbol_size = sym_file->symbol_size;
lineno_size = sym_file->lineno_size;
lineno2_size = sym_file->lineno2_size;
- printf("\t--------symbol file----------- %s\n", file_name);
+ printf("\t--------symbol file-----------\n");
+ printf("\tName: %s\n", file_name);
+ if (strcmp(file_name, lib_name)) printf("\tLibrary: %s\n", lib_name);
printf("\t\tunknown1: %08x\n"
"\t\trange\n"
"\t\t\tsegment: %04x\n"
@@ -581,8 +588,7 @@ static void pdb_dump_symbols(struct pdb_reader* reader, PDB_STREAM_INDEXES* sidx
free(modimage);
}
- file_name += strlen(file_name) + 1;
- file = (char*)((DWORD_PTR)(file_name + strlen(file_name) + 1 + 3) & ~3);
+ file = (char*)((DWORD_PTR)(lib_name + strlen(lib_name) + 1 + 3) & ~3);
}
dump_global_symbol(reader, symbols->global_file);
dump_public_symbol(reader, symbols->public_file);
More information about the wine-devel
mailing list