display_debug_lines_decoded

The directory_table strnlen used the negative of the proper size.  After
fixing that I realised we don't need strnlen here.

	* dwarf.c (display_debug_lines_decoded): Don't use strnlen when
	we have already checked for NUL termination.
This commit is contained in:
Alan Modra
2021-05-15 14:54:55 +09:30
parent 37195e23e7
commit 56051e28a3
2 changed files with 9 additions and 4 deletions

View File

@ -1,3 +1,8 @@
2021-05-15 Alan Modra <amodra@gmail.com>
* dwarf.c (display_debug_lines_decoded): Don't use strnlen when
we have already checked for NUL termination.
2021-05-15 Alan Modra <amodra@gmail.com>
* dwarf.c (read_debug_line_header): Delete initial_length_size.

View File

@ -5042,8 +5042,8 @@ display_debug_lines_decoded (struct dwarf_section * section,
while (*ptr_directory_table != 0)
{
directory_table[i] = ptr_directory_table;
ptr_directory_table += strnlen ((char *) ptr_directory_table,
ptr_directory_table - end) + 1;
ptr_directory_table
+= strlen ((char *) ptr_directory_table) + 1;
i++;
}
}
@ -5082,8 +5082,8 @@ display_debug_lines_decoded (struct dwarf_section * section,
while (*ptr_file_name_table != 0)
{
file_table[i].name = ptr_file_name_table;
ptr_file_name_table += strnlen ((char *) ptr_file_name_table,
end - ptr_file_name_table) + 1;
ptr_file_name_table
+= strlen ((char *) ptr_file_name_table) + 1;
/* We are not interested in directory, time or size. */
READ_ULEB (file_table[i].directory_index,