[PATCH] [DbgHelp]: added support for index leaves in types definition for CodeView debug format
Eric Pouech
eric.pouech at orange.fr
Sat Jun 23 08:18:35 CDT 2012
(#30974)
A+
---
dlls/dbghelp/msc.c | 12 ++++++++++++
include/wine/mscvpdb.h | 12 ++++++++++++
2 files changed, 24 insertions(+)
diff --git a/dlls/dbghelp/msc.c b/dlls/dbghelp/msc.c
index e32c463..7a68e1d 100644
--- a/dlls/dbghelp/msc.c
+++ b/dlls/dbghelp/msc.c
@@ -935,6 +935,18 @@ static int codeview_add_type_struct_field_list(struct codeview_type_parse* ctp,
}
break;
+ case LF_INDEX_V1:
+ if (!codeview_add_type_struct_field_list(ctp, symt, type->index_v1.ref))
+ return FALSE;
+ ptr += 2 + 2;
+ break;
+
+ case LF_INDEX_V2:
+ if (!codeview_add_type_struct_field_list(ctp, symt, type->index_v2.ref))
+ return FALSE;
+ ptr += 2 + 2 + 4;
+ break;
+
default:
FIXME("Unsupported type %04x in STRUCT field list\n", type->generic.id);
return FALSE;
diff --git a/include/wine/mscvpdb.h b/include/wine/mscvpdb.h
index 4755c5a..23b7a3a 100644
--- a/include/wine/mscvpdb.h
+++ b/include/wine/mscvpdb.h
@@ -723,6 +723,18 @@ union codeview_fieldtype
struct p_string p_name;
} membermodify_v2;
+ struct
+ {
+ short int id;
+ short int ref;
+ } index_v1;
+
+ struct
+ {
+ short int id;
+ short int unk;
+ unsigned int ref;
+ } index_v2;
};
More information about the wine-patches
mailing list