dbghelp/dwarf: Properly parse line number header for DWARF4 debug info.
Signed-off-by: Eric Pouech <eric.pouech@gmail.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
e28ec5a0fb
commit
e87f3dd5b8
|
@ -2222,7 +2222,7 @@ static BOOL dwarf2_parse_line_numbers(const dwarf2_section_t* sections,
|
|||
{
|
||||
dwarf2_traverse_context_t traverse;
|
||||
ULONG_PTR length;
|
||||
unsigned insn_size, default_stmt;
|
||||
unsigned insn_size, version, default_stmt;
|
||||
unsigned line_range, opcode_base;
|
||||
int line_base;
|
||||
unsigned char offset_size;
|
||||
|
@ -2256,9 +2256,11 @@ static BOOL dwarf2_parse_line_numbers(const dwarf2_section_t* sections,
|
|||
WARN("out of bounds header\n");
|
||||
return FALSE;
|
||||
}
|
||||
dwarf2_parse_u2(&traverse); /* version */
|
||||
version = dwarf2_parse_u2(&traverse);
|
||||
dwarf2_parse_offset(&traverse, offset_size); /* header_len */
|
||||
insn_size = dwarf2_parse_byte(&traverse);
|
||||
if (version >= 4)
|
||||
dwarf2_parse_byte(&traverse); /* max_operations_per_instructions */
|
||||
default_stmt = dwarf2_parse_byte(&traverse);
|
||||
line_base = (signed char)dwarf2_parse_byte(&traverse);
|
||||
line_range = dwarf2_parse_byte(&traverse);
|
||||
|
|
Loading…
Reference in New Issue