From 166793cc5b56490bcd8b191cbc7d3cba26c732a8 Mon Sep 17 00:00:00 2001 From: Brooks Davis Date: Thu, 24 Oct 2019 22:34:48 +0000 Subject: [PATCH] binutils: Fix bugs found by -Wpointer-compare The MIPS bug was introduced by upstream commit 7403cb630, which failed to account for the additional indirection introduced and also dropped one of the checks; change it to the standard "NULL-or-empty" check as used elsewhere in BFD, which is also what upstream now has. Submitted by: James Clarke Obtained from: CheriBSD Sponsored by: DARPA, AFRL Differential Revision: https://reviews.freebsd.org/D21911 --- contrib/binutils/bfd/elfxx-mips.c | 2 +- contrib/binutils/binutils/stabs.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/contrib/binutils/bfd/elfxx-mips.c b/contrib/binutils/bfd/elfxx-mips.c index 1a49b0c2fafe..689c22da3591 100644 --- a/contrib/binutils/bfd/elfxx-mips.c +++ b/contrib/binutils/bfd/elfxx-mips.c @@ -3966,7 +3966,7 @@ mips_elf_calculate_relocation (bfd *abfd, bfd *input_bfd, *namep = bfd_elf_string_from_elf_section (input_bfd, symtab_hdr->sh_link, sym->st_name); - if (*namep == '\0') + if (*namep == NULL || **namep == '\0') *namep = bfd_section_name (input_bfd, sec); target_is_16_bit_code_p = (sym->st_other == STO_MIPS16); diff --git a/contrib/binutils/binutils/stabs.c b/contrib/binutils/binutils/stabs.c index c8fc77dab2f6..94bd2ca8ba05 100644 --- a/contrib/binutils/binutils/stabs.c +++ b/contrib/binutils/binutils/stabs.c @@ -2668,7 +2668,7 @@ parse_stab_members (void *dhandle, struct stab_handle *info, ++*pp; voffset &= 0x7fffffff; - if (**pp == ';' || *pp == '\0') + if (**pp == ';' || **pp == '\0') { /* Must be g++ version 1. */ context = DEBUG_TYPE_NULL;