From 56051e28a33aa6b3c37a61d4647da324c21bc64d Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Sat, 15 May 2021 14:54:55 +0930 Subject: [PATCH] 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. --- binutils/ChangeLog | 5 +++++ binutils/dwarf.c | 8 ++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/binutils/ChangeLog b/binutils/ChangeLog index 93a47cbbebb..5efa9305a6d 100644 --- a/binutils/ChangeLog +++ b/binutils/ChangeLog @@ -1,3 +1,8 @@ +2021-05-15 Alan Modra + + * dwarf.c (display_debug_lines_decoded): Don't use strnlen when + we have already checked for NUL termination. + 2021-05-15 Alan Modra * dwarf.c (read_debug_line_header): Delete initial_length_size. diff --git a/binutils/dwarf.c b/binutils/dwarf.c index 4f69dbb8f85..e881ceecb79 100644 --- a/binutils/dwarf.c +++ b/binutils/dwarf.c @@ -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, -- 2.30.2