[PATCH] [DbgHelp]: in dwarf parsing, allow 64 bit wide values
Eric Pouech
eric.pouech at orange.fr
Sat Nov 28 06:24:01 CST 2009
A+
---
dlls/dbghelp/dwarf.c | 9 ++++++++-
1 files changed, 8 insertions(+), 1 deletions(-)
diff --git a/dlls/dbghelp/dwarf.c b/dlls/dbghelp/dwarf.c
index e5617c3..6006202 100644
--- a/dlls/dbghelp/dwarf.c
+++ b/dlls/dbghelp/dwarf.c
@@ -490,7 +490,9 @@ static void dwarf2_fill_attr(const dwarf2_parse_context_t* ctx,
break;
case DW_FORM_data8:
- FIXME("Unhandled 64bits support\n");
+ attr->u.block.size = 8;
+ attr->u.block.ptr = data;
+ data += 8;
break;
case DW_FORM_ref1:
@@ -1411,6 +1413,11 @@ static void dwarf2_parse_variable(dwarf2_subprogram_t* subpgm,
break;
case DW_FORM_data8:
+ v.n1.n2.vt = VT_I1 | VT_BYREF;
+ v.n1.n2.n3.byref = pool_alloc(&subpgm->ctx->module->pool, value.u.block.size);
+ memcpy(v.n1.n2.n3.byref, value.u.block.ptr, value.u.block.size);
+ break;
+
default:
FIXME("Unsupported form for const value %s (%lx)\n",
name.u.string, value.form);
More information about the wine-patches
mailing list