mirror of
https://github.com/espressif/binutils-gdb.git
synced 2025-06-27 22:48:57 +08:00
PR22204, Lack of DW_LNE_end_sequence causes "infinite" loop
PR 22204 * dwarf2.c (decode_line_info): Ensure line_ptr stays within bounds in inner loop.
This commit is contained in:
@ -1,3 +1,9 @@
|
|||||||
|
2017-09-26 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
|
PR 22204
|
||||||
|
* dwarf2.c (decode_line_info): Ensure line_ptr stays within
|
||||||
|
bounds in inner loop.
|
||||||
|
|
||||||
2017-09-25 Alan Modra <amodra@gmail.com>
|
2017-09-25 Alan Modra <amodra@gmail.com>
|
||||||
|
|
||||||
PR 22202
|
PR 22202
|
||||||
|
@ -2277,7 +2277,7 @@ decode_line_info (struct comp_unit *unit, struct dwarf2_debug *stash)
|
|||||||
bfd_vma high_pc = 0;
|
bfd_vma high_pc = 0;
|
||||||
|
|
||||||
/* Decode the table. */
|
/* Decode the table. */
|
||||||
while (! end_sequence)
|
while (!end_sequence && line_ptr < line_end)
|
||||||
{
|
{
|
||||||
op_code = read_1_byte (abfd, line_ptr, line_end);
|
op_code = read_1_byte (abfd, line_ptr, line_end);
|
||||||
line_ptr += 1;
|
line_ptr += 1;
|
||||||
|
Reference in New Issue
Block a user