[PATCH 11/11] dbghelp: Parse the DWARF information in Mach-O modules.

Ken Thomases ken at codeweavers.com
Wed Jun 24 17:17:49 CDT 2015


At this point, this is just the .eh_frame information used for walking the stack.
---
 dlls/dbghelp/macho_module.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/dlls/dbghelp/macho_module.c b/dlls/dbghelp/macho_module.c
index 4e89435..46c4a82 100644
--- a/dlls/dbghelp/macho_module.c
+++ b/dlls/dbghelp/macho_module.c
@@ -1003,6 +1003,10 @@ BOOL macho_load_debug_info(struct module* module)
 
     macho_finish_stabs(module, &mdi.ht_symtab);
 
+    if (dwarf2_parse(module, module->reloc_delta, NULL /* FIXME: some thunks to deal with ? */,
+                     &module->format_info[DFI_MACHO]->u.macho_info->file_map))
+        ret = TRUE;
+
     pool_destroy(&mdi.pool);
     return ret;
 }
@@ -1126,6 +1130,7 @@ static BOOL macho_load_file(struct process* pcs, const WCHAR* filename,
             HeapFree(GetProcessHeap(), 0, modfmt);
             goto leave;
         }
+        macho_info->module->reloc_delta = macho_info->module->module.BaseOfImage - fmap.u.macho.segs_start;
         macho_module_info = (void*)(modfmt + 1);
         macho_info->module->format_info[DFI_MACHO] = modfmt;
 
-- 
1.9.5 (Apple Git-50.3)




More information about the wine-patches mailing list