Eric Pouech : dbghelp: Add dwarf support of DW_FORM_ref_udata.

Alexandre Julliard julliard at winehq.org
Fri Sep 3 16:25:28 CDT 2021


Module: wine
Branch: master
Commit: 0020265286beec7e1cb73b2e126cb878c7bf36d8
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=0020265286beec7e1cb73b2e126cb878c7bf36d8

Author: Eric Pouech <eric.pouech at gmail.com>
Date:   Thu Sep  2 11:22:01 2021 +0200

dbghelp: Add dwarf support of DW_FORM_ref_udata.

DW_FORM_ref_udata value is an offset from current unit (as the others
DW_FORM_ref[1,2,3,4] are)

Signed-off-by: Eric Pouech <eric.pouech at gmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/dbghelp/dwarf.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/dlls/dbghelp/dwarf.c b/dlls/dbghelp/dwarf.c
index 9d8d2756258..b62e1a2cce8 100644
--- a/dlls/dbghelp/dwarf.c
+++ b/dlls/dbghelp/dwarf.c
@@ -544,7 +544,8 @@ static void dwarf2_fill_attr(const dwarf2_parse_context_t* ctx,
         break;
 
     case DW_FORM_ref_udata:
-        attr->u.uvalue = dwarf2_get_leb128_as_unsigned(data, NULL);
+        attr->u.uvalue = ctx->ref_offset + dwarf2_get_leb128_as_unsigned(data, NULL);
+        TRACE("ref_udata<0x%lx>\n", attr->u.uvalue);
         break;
 
     case DW_FORM_udata:




More information about the wine-cvs mailing list