Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
dc0ac71f
Commit
dc0ac71f
authored
Sep 16, 2021
by
Eric Pouech
Committed by
Alexandre Julliard
Sep 16, 2021
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
dbghelp/dwarf: Add proper support for DW_FORM_GNU_ref_alt.
Signed-off-by:
Eric Pouech
<
eric.pouech@gmail.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
d832d51c
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
14 additions
and
3 deletions
+14
-3
dwarf.c
dlls/dbghelp/dwarf.c
+14
-3
No files found.
dlls/dbghelp/dwarf.c
View file @
dc0ac71f
...
...
@@ -680,9 +680,16 @@ static BOOL dwarf2_fill_attr(const dwarf2_parse_context_t* ctx,
break
;
case
DW_FORM_GNU_ref_alt
:
FIXME
(
"Unhandled FORM_GNU_ref_alt
\n
"
);
attr
->
u
.
uvalue
=
0
;
return
FALSE
;
if
(
!
ctx
->
module_ctx
->
dwz
)
{
ERR
(
"No DWZ file present for GNU_ref_alt in %s
\n
"
,
debugstr_w
(
ctx
->
module_ctx
->
module
->
modulename
));
attr
->
u
.
uvalue
=
0
;
return
FALSE
;
}
attr
->
u
.
uvalue
=
dwarf2_get_addr
(
data
,
ctx
->
head
.
offset_size
);
TRACE
(
"ref_alt<0x%lx>
\n
"
,
attr
->
u
.
uvalue
);
break
;
case
DW_FORM_GNU_strp_alt
:
if
(
ctx
->
module_ctx
->
dwz
)
{
...
...
@@ -767,6 +774,10 @@ static dwarf2_debug_info_t* dwarf2_jump_to_debug_info(struct attribute* attr)
case
DW_FORM_ref_addr
:
ref_ctx
=
dwarf2_locate_cu
(
attr
->
debug_info
->
unit_ctx
->
module_ctx
,
attr
->
u
.
uvalue
);
break
;
case
DW_FORM_GNU_ref_alt
:
if
(
attr
->
debug_info
->
unit_ctx
->
module_ctx
->
dwz
)
ref_ctx
=
dwarf2_locate_cu
(
&
attr
->
debug_info
->
unit_ctx
->
module_ctx
->
dwz
->
module_ctx
,
attr
->
u
.
uvalue
);
break
;
default:
with_other
=
FALSE
;
ref_ctx
=
attr
->
debug_info
->
unit_ctx
;
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment