Author: markj
Date: Fri Mar 27 17:06:24 2020
New Revision: 359370
URL: https://svnweb.freebsd.org/changeset/base/359370

Log:
  MFC r359172-r359176:
  elftoolchain coverity fixes

Modified:
  stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c
  stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
  stable/12/contrib/elftoolchain/libpe/pe_symtab.c
  stable/12/contrib/elftoolchain/readelf/readelf.c
Directory Properties:
  stable/12/   (props changed)

Modified: stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c
==============================================================================
--- stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c      Fri Mar 27 
17:04:46 2020        (r359369)
+++ stable/12/contrib/elftoolchain/libdwarf/libdwarf_die.c      Fri Mar 27 
17:06:24 2020        (r359370)
@@ -70,8 +70,7 @@ _dwarf_die_add(Dwarf_CU cu, uint64_t offset, uint64_t 
        die->die_cu     = cu;
        die->die_dbg    = cu->cu_dbg;
 
-       if (diep != NULL)
-               *diep = die;
+       *diep = die;
 
        return (DW_DLE_NONE);
 }

Modified: stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c
==============================================================================
--- stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Fri Mar 27 
17:04:46 2020        (r359369)
+++ stable/12/contrib/elftoolchain/libelftc/libelftc_dem_gnu3.c Fri Mar 27 
17:06:24 2020        (r359370)
@@ -2912,7 +2912,7 @@ again:
                if (len <= 0)
                        goto clean;
                if (!vector_str_push(&v.ext_name, ddata->cur, len))
-                       return (0);
+                       goto clean;
                ddata->cur += len;
                if (!vector_type_qualifier_push(&v, TYPE_EXT))
                        goto clean;

Modified: stable/12/contrib/elftoolchain/libpe/pe_symtab.c
==============================================================================
--- stable/12/contrib/elftoolchain/libpe/pe_symtab.c    Fri Mar 27 17:04:46 
2020        (r359369)
+++ stable/12/contrib/elftoolchain/libpe/pe_symtab.c    Fri Mar 27 17:06:24 
2020        (r359370)
@@ -33,7 +33,7 @@ ELFTC_VCSID("$Id: pe_symtab.c 3312 2016-01-10 09:23:51
 int
 pe_update_symtab(PE *pe, char *symtab, size_t sz, unsigned int nsym)
 {
-       PE_Scn *ps;
+       PE_Scn *ps, *pstmp;
        PE_SecBuf *sb;
        PE_SecHdr *sh;
 
@@ -48,7 +48,7 @@ pe_update_symtab(PE *pe, char *symtab, size_t sz, unsi
        }
 
        /* Remove the old symbol table. */
-       STAILQ_FOREACH(ps, &pe->pe_scn, ps_next) {
+       STAILQ_FOREACH_SAFE(ps, &pe->pe_scn, ps_next, pstmp) {
                if (ps->ps_ndx == 0xFFFFFFFFU)
                        libpe_release_scn(ps);
        }

Modified: stable/12/contrib/elftoolchain/readelf/readelf.c
==============================================================================
--- stable/12/contrib/elftoolchain/readelf/readelf.c    Fri Mar 27 17:04:46 
2020        (r359369)
+++ stable/12/contrib/elftoolchain/readelf/readelf.c    Fri Mar 27 17:06:24 
2020        (r359370)
@@ -5915,6 +5915,7 @@ dump_dwarf_frame_regtable(struct readelf *re, Dwarf_Fd
        for (; cur_pc < end_pc; cur_pc++) {
                if (dwarf_get_fde_info_for_all_regs(fde, cur_pc, &rt, &row_pc,
                    &de) != DW_DLV_OK) {
+                       free(vec);
                        warnx("dwarf_get_fde_info_for_all_regs failed: %s\n",
                            dwarf_errmsg(de));
                        return (-1);
@@ -7088,6 +7089,7 @@ dump_ar(struct readelf *re, int fd)
                                }
                                printf("Binary %s(%s) contains:\n",
                                    re->filename, arhdr->ar_name);
+                               elf_end(e);
                        }
                        printf("\t%s\n", arsym[i].as_name);
                }
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to