From 768bb93fd78fc4cafd01443989e5cec75a9adaaa Mon Sep 17 00:00:00 2001 From: Eric Pouech Date: Wed, 13 Oct 2021 15:17:14 +0200 Subject: [PATCH] winedump: Dump MSC's S_UNAMESPACE entries. Signed-off-by: Eric Pouech Signed-off-by: Alexandre Julliard --- include/wine/mscvpdb.h | 15 +++++++++++++++ tools/winedump/msc.c | 8 ++++++++ 2 files changed, 23 insertions(+) diff --git a/include/wine/mscvpdb.h b/include/wine/mscvpdb.h index c9ab4abb166..1ede937abc4 100644 --- a/include/wine/mscvpdb.h +++ b/include/wine/mscvpdb.h @@ -1958,6 +1958,20 @@ union codeview_symbol unsigned short varflags; char name[1]; } file_static_v3; + + struct + { + unsigned short int len; + unsigned short int id; + struct p_string pname; + } unamespace_v2; + + struct + { + unsigned short int len; + unsigned short int id; + unsigned char name[1]; + } unamespace_v3; }; enum BinaryAnnotationOpcode @@ -2031,6 +2045,7 @@ enum BinaryAnnotationOpcode #define S_GTHREAD32_ST 0x100f #define S_FRAMEPROC 0x1012 #define S_COMPILE2_ST 0x1013 +#define S_UNAMESPACE_ST 0x1029 #define S_OBJNAME 0x1101 #define S_THUNK32 0x1102 diff --git a/tools/winedump/msc.c b/tools/winedump/msc.c index b7b7eb435ff..12d1a9e62ab 100644 --- a/tools/winedump/msc.c +++ b/tools/winedump/msc.c @@ -1839,6 +1839,14 @@ BOOL codeview_dump_symbols(const void* root, unsigned long size) get_varflags(sym->file_static_v3.varflags)); break; + case S_UNAMESPACE_ST: + printf("UNameSpace V2 '%s'\n", p_string(&sym->unamespace_v2.pname)); + break; + + case S_UNAMESPACE: + printf("UNameSpace V3 '%s'\n", sym->unamespace_v3.name); + break; + default: printf("\n\t\t>>> Unsupported symbol-id %x sz=%d\n", sym->generic.id, sym->generic.len + 2); dump_data((const void*)sym, sym->generic.len + 2, " ");