[PATCH 2/5] tools/winedump: dump MSC's S_UNAMESPACE entries

Eric Pouech eric.pouech at gmail.com
Wed Oct 13 08:17:14 CDT 2021


Signed-off-by: Eric Pouech <eric.pouech at gmail.com>

---
 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, "  ");




More information about the wine-devel mailing list