On Sat, 12 Aug 2017 11:30:44 -0600 Michael Sartain <mikes...@fastmail.com> wrote:
> Signed-off-by: Michael Sartain <mikes...@fastmail.com> > --- > trace-output.c | 6 +++++- > 1 file changed, 5 insertions(+), 1 deletion(-) > > diff --git a/trace-output.c b/trace-output.c > index bfe6331..84b21b0 100644 > --- a/trace-output.c > +++ b/trace-output.c > @@ -929,7 +929,11 @@ tracecmd_add_option(struct tracecmd_output *handle, > free(option); > return NULL; > } > - memcpy(option->data, data, size); > + > + /* Some IDs (like TRACECMD_OPTION_TRACECLOCK) pass NULL data */ > + if (data) > + memcpy(option->data, data, size); Is this a problem, as when this happens, size should be zero. Does it crash with data=NULL and size=0, or have you seen size not be zero? -- Steve > + > list_add_tail(&option->list, &handle->options); > > return option;