[PATCH xserver 5/8] dmx: Silence a string truncation warning.

Emil Velikov emil.l.velikov at gmail.com
Fri Apr 6 10:41:08 UTC 2018


On 5 April 2018 at 18:13, Adam Jackson <ajax at redhat.com> wrote:
> ../hw/dmx/config/dmxparse.c: In function ‘dmxConfigCreateOption’:
> ../hw/dmx/config/dmxparse.c:385:13: warning: ‘strncpy’ output truncated before terminating nul copying as many bytes from a string as its length [-Wstringop-truncation]
>              strncpy(option->string + offset, p->string, len);
>              ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../hw/dmx/config/dmxparse.c:383:23: note: length computed here
>              int len = strlen(p->string);
>                        ^~~~~~~~~~~~~~~~~
>
> The thing it's warning about is intentional, the surrounding code does
> its own nul-termination. Make that obvious by using memcpy instead.
>
> Signed-off-by: Adam Jackson <ajax at redhat.com>
> ---
>  hw/dmx/config/dmxparse.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/hw/dmx/config/dmxparse.c b/hw/dmx/config/dmxparse.c
> index cf510844d6..f66143a6a5 100644
> --- a/hw/dmx/config/dmxparse.c
> +++ b/hw/dmx/config/dmxparse.c
> @@ -382,7 +382,7 @@ dmxConfigCreateOption(DMXConfigTokenPtr pStart,
>          if (p->string) {
>              int len = strlen(p->string);
>
> -            strncpy(option->string + offset, p->string, len);
> +            memcpy(option->string + offset, p->string, len);
Speaking of surrounding code - worth using option->string[offset] like
the rest of the function?

-Emil


More information about the xorg-devel mailing list