Eric Pouech : dbghelp: Keep the . debug_frame section mapped when parsing dwarf debug_info ( needed for CFA management).

Alexandre Julliard julliard at winehq.org
Mon Mar 29 09:57:49 CDT 2010


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

Author: Eric Pouech <eric.pouech at orange.fr>
Date:   Sat Mar 27 09:07:50 2010 +0100

dbghelp: Keep the .debug_frame section mapped when parsing dwarf debug_info (needed for CFA management).

---

 dlls/dbghelp/dwarf.c |    5 +++++
 1 files changed, 5 insertions(+), 0 deletions(-)

diff --git a/dlls/dbghelp/dwarf.c b/dlls/dbghelp/dwarf.c
index e3c9ed9..a1410b2 100644
--- a/dlls/dbghelp/dwarf.c
+++ b/dlls/dbghelp/dwarf.c
@@ -196,6 +196,8 @@ typedef struct dwarf2_parse_context_s
 struct dwarf2_module_info_s
 {
     dwarf2_section_t            debug_loc;
+    dwarf2_section_t            debug_frame;
+    dwarf2_section_t            eh_frame;
     unsigned char               word_size;
 };
 
@@ -2346,6 +2348,7 @@ BOOL dwarf2_parse(struct module* module, unsigned long load_offset,
     dwarf2_traverse_context_t   mod_ctx;
     struct image_section_map    debug_sect, debug_str_sect, debug_abbrev_sect,
                                 debug_line_sect;
+
     BOOL                ret = TRUE;
     struct module_format* dwarf2_modfmt;
 
@@ -2396,6 +2399,8 @@ BOOL dwarf2_parse(struct module* module, unsigned long load_offset,
     dwarf2_modfmt->module->format_info[DFI_DWARF] = dwarf2_modfmt;
 
     dwarf2_init_section(&dwarf2_modfmt->u.dwarf2_info->debug_loc,   fmap, ".debug_loc",   NULL);
+    dwarf2_init_section(&dwarf2_modfmt->u.dwarf2_info->debug_frame, fmap, ".debug_frame", NULL);
+    dwarf2_init_section(&dwarf2_modfmt->u.dwarf2_info->eh_frame,    fmap, ".eh_frame",    NULL);
 
     while (mod_ctx.data < mod_ctx.end_data)
     {




More information about the wine-cvs mailing list