Date: Fri, 16 Mar 2018 20:43:40 +0000 (UTC) From: Conrad Meyer <cem@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r331073 - head/cddl/contrib/opensolaris/lib/libdtrace/common Message-ID: <201803162043.w2GKheIG032654@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: cem Date: Fri Mar 16 20:43:40 2018 New Revision: 331073 URL: https://svnweb.freebsd.org/changeset/base/331073 Log: libdtrace: Eliminate a minor UB by fully initializing parameter struct The dtt_flags value is dereferenced by dt_type_pointer() and must be initialized first. Reported by: Coverity Sponsored by: Dell EMC Isilon Modified: head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c Modified: head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c ============================================================================== --- head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c Fri Mar 16 20:04:52 2018 (r331072) +++ head/cddl/contrib/opensolaris/lib/libdtrace/common/dt_parser.c Fri Mar 16 20:43:40 2018 (r331073) @@ -3069,9 +3069,10 @@ dt_cook_op1(dt_node_t *dnp, uint_t idflags) "cannot take address of bit-field\n"); } - dtt.dtt_object = NULL; - dtt.dtt_ctfp = cp->dn_ctfp; - dtt.dtt_type = cp->dn_type; + dtt = (dtrace_typeinfo_t){ + .dtt_ctfp = cp->dn_ctfp, + .dtt_type = cp->dn_type, + }; if (dt_type_pointer(&dtt) == -1) { xyerror(D_TYPE_ERR, "cannot find type for \"&\": %s*\n",
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201803162043.w2GKheIG032654>