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;

Reply via email to