aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlan Modra <amodra@gmail.com>2022-06-09 23:19:03 +0930
committerAlan Modra <amodra@gmail.com>2022-06-14 09:56:45 +0930
commit22b8da0ae7a9fa524b639623c66df63bd0beaf7c (patch)
tree47cc06ff951e31c26af48b3d2a94bb38750da479
parent82cb2524323d4f6eeb2adae3451f31754e271126 (diff)
downloadgdb-22b8da0ae7a9fa524b639623c66df63bd0beaf7c.zip
gdb-22b8da0ae7a9fa524b639623c66df63bd0beaf7c.tar.gz
gdb-22b8da0ae7a9fa524b639623c66df63bd0beaf7c.tar.bz2
asan: applying zero offset to NULL pointer
* dwarf.c (fetch_indexed_string): Move initialisation of "curr" and "end" after checking for missing section.
-rw-r--r--binutils/dwarf.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/binutils/dwarf.c b/binutils/dwarf.c
index caa3ce4..c16f5a8 100644
--- a/binutils/dwarf.c
+++ b/binutils/dwarf.c
@@ -700,8 +700,7 @@ fetch_indexed_string (dwarf_vma idx, struct cu_tu_set *this_set,
dwarf_vma index_offset;
dwarf_vma str_offset;
const char * ret;
- unsigned char *curr = index_section->start;
- unsigned char *end = curr + index_section->size;
+ unsigned char *curr, *end;
dwarf_vma length;
if (index_section->start == NULL)
@@ -712,6 +711,8 @@ fetch_indexed_string (dwarf_vma idx, struct cu_tu_set *this_set,
return (dwo ? _("<no .debug_str.dwo section>")
: _("<no .debug_str section>"));
+ curr = index_section->start;
+ end = curr + index_section->size;
/* FIXME: We should cache the length... */
SAFE_BYTE_GET_AND_INC (length, curr, 4, end);
if (length == 0xffffffff)