Ken Thomases : dbghelp: Parse the DWARF information in Mach-O modules.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Jun 25 08:19:40 CDT 2015


Module: wine
Branch: master
Commit: 3a9698f4afff9e349146c126d682e00422e62064
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=3a9698f4afff9e349146c126d682e00422e62064

Author: Ken Thomases <ken at codeweavers.com>
Date:   Wed Jun 24 17:17:49 2015 -0500

dbghelp: Parse the DWARF information in Mach-O modules.

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 f6e5ed3..f39b4b6 100644
--- a/dlls/dbghelp/macho_module.c
+++ b/dlls/dbghelp/macho_module.c
@@ -1002,6 +1002,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;
 }
@@ -1125,6 +1129,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;
 




More information about the wine-cvs mailing list