Date: Tue, 11 Feb 2020 05:14:36 +0000 (UTC) From: Mark Johnston <markj@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-12@freebsd.org Subject: svn commit: r357754 - stable/12/contrib/elftoolchain/libdwarf Message-ID: <202002110514.01B5EaSt095945@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: markj Date: Tue Feb 11 05:14:36 2020 New Revision: 357754 URL: https://svnweb.freebsd.org/changeset/base/357754 Log: MFC r357531, r357532, r357533, r357534: libdwarf: Coverity fixups. Modified: stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_attr.c stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_expr.c stable/12/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c stable/12/contrib/elftoolchain/libdwarf/libdwarf_frame.c Directory Properties: stable/12/ (props changed) Modified: stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_attr.c ============================================================================== --- stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_attr.c Tue Feb 11 05:13:35 2020 (r357753) +++ stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_attr.c Tue Feb 11 05:14:36 2020 (r357754) @@ -46,8 +46,10 @@ dwarf_add_AT_location_expr(Dwarf_P_Debug dbg, Dwarf_P_ at->at_attrib = attr; at->at_expr = loc_expr; - if (_dwarf_expr_into_block(loc_expr, error) != DW_DLE_NONE) + if (_dwarf_expr_into_block(loc_expr, error) != DW_DLE_NONE) { + free(at); return (DW_DLV_BADADDR); + } at->u[0].u64 = loc_expr->pe_length; at->u[1].u8p = loc_expr->pe_block; if (loc_expr->pe_length <= UCHAR_MAX) Modified: stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_expr.c ============================================================================== --- stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_expr.c Tue Feb 11 05:13:35 2020 (r357753) +++ stable/12/contrib/elftoolchain/libdwarf/dwarf_pro_expr.c Tue Feb 11 05:14:36 2020 (r357754) @@ -36,10 +36,10 @@ _dwarf_add_expr(Dwarf_P_Expr expr, Dwarf_Small opcode, Dwarf_Debug dbg; int len; - dbg = expr != NULL ? expr->pe_dbg : NULL; + dbg = expr->pe_dbg; - if (_dwarf_loc_expr_add_atom(expr->pe_dbg, NULL, NULL, opcode, val1, - val2, &len, error) != DW_DLE_NONE) + if (_dwarf_loc_expr_add_atom(dbg, NULL, NULL, opcode, val1, val2, &len, + error) != DW_DLE_NONE) return (NULL); assert(len > 0); @@ -67,7 +67,7 @@ _dwarf_expr_into_block(Dwarf_P_Expr expr, Dwarf_Error Dwarf_Debug dbg; int len, pos, ret; - dbg = expr != NULL ? expr->pe_dbg : NULL; + dbg = expr->pe_dbg; if (expr->pe_block != NULL) { free(expr->pe_block); @@ -88,7 +88,7 @@ _dwarf_expr_into_block(Dwarf_P_Expr expr, Dwarf_Error pos = 0; STAILQ_FOREACH(ee, &expr->pe_eelist, ee_next) { assert((Dwarf_Unsigned) pos < expr->pe_length); - ret = _dwarf_loc_expr_add_atom(expr->pe_dbg, + ret = _dwarf_loc_expr_add_atom(dbg, &expr->pe_block[pos], &expr->pe_block[expr->pe_length], ee->ee_loc.lr_atom, ee->ee_loc.lr_number, ee->ee_loc.lr_number2, &len, error); Modified: stable/12/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c ============================================================================== --- stable/12/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c Tue Feb 11 05:13:35 2020 (r357753) +++ stable/12/contrib/elftoolchain/libdwarf/libdwarf_abbrev.c Tue Feb 11 05:14:36 2020 (r357754) @@ -59,9 +59,7 @@ _dwarf_abbrev_add(Dwarf_CU cu, uint64_t entry, uint64_ HASH_ADD(ab_hh, cu->cu_abbrev_hash, ab_entry, sizeof(ab->ab_entry), ab); - if (abp != NULL) - *abp = ab; - + *abp = ab; return (DW_DLE_NONE); } Modified: stable/12/contrib/elftoolchain/libdwarf/libdwarf_frame.c ============================================================================== --- stable/12/contrib/elftoolchain/libdwarf/libdwarf_frame.c Tue Feb 11 05:13:35 2020 (r357753) +++ stable/12/contrib/elftoolchain/libdwarf/libdwarf_frame.c Tue Feb 11 05:14:36 2020 (r357754) @@ -468,9 +468,9 @@ _dwarf_frame_section_init(Dwarf_Debug dbg, Dwarf_Frame if (length > ds->ds_size - offset || (length == 0 && !eh_frame)) { - DWARF_SET_ERROR(dbg, error, - DW_DLE_DEBUG_FRAME_LENGTH_BAD); - return (DW_DLE_DEBUG_FRAME_LENGTH_BAD); + ret = DW_DLE_DEBUG_FRAME_LENGTH_BAD; + DWARF_SET_ERROR(dbg, error, ret); + goto fail_cleanup; } /* Check terminator for .eh_frame */
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202002110514.01B5EaSt095945>