[vlc-devel] [PATCH] ogg: fix stringop-truncation warning

Rémi Denis-Courmont remi at remlab.net
Thu Sep 5 12:51:14 CEST 2019


memccpy is POSIX not ISO, but it could be added in compat/ if needed.

Le 5 septembre 2019 09:23:57 GMT+03:00, Steve Lhomme <robux4 at ycbcr.xyz> a écrit :
>Is memccpy() part of the C standard ?
>What's wrong with strncpy ?
>
>On 2019-09-05 1:50, Alexandre Janniaux wrote:
>> ---
>>   modules/mux/ogg.c | 5 +++--
>>   1 file changed, 3 insertions(+), 2 deletions(-)
>> 
>> diff --git a/modules/mux/ogg.c b/modules/mux/ogg.c
>> index 82e5e90aa2..4a256b4d6a 100644
>> --- a/modules/mux/ogg.c
>> +++ b/modules/mux/ogg.c
>> @@ -499,10 +499,11 @@ static int AddStream( sout_mux_t *p_mux,
>sout_input_t *p_input )
>> 
>>               memcpy( p_stream->p_oggds_header->stream_type, "audio",
>5 );
>> 
>> -            memset( p_stream->p_oggds_header->sub_type, 0, 4 );
>>               char buf[5];
>>               snprintf( buf, sizeof(buf), "%"PRIx16, i_tag );
>> -            strncpy( p_stream->p_oggds_header->sub_type, buf, 4 );
>> +
>> +            memset( p_stream->p_oggds_header->sub_type, 0, 4 );
>> +            memccpy( p_stream->p_oggds_header->sub_type, buf, '\0',
>4 );
>> 
>>               p_stream->p_oggds_header->i_time_unit =
>MSFTIME_FROM_SEC(1);
>>               p_stream->p_oggds_header->i_default_len = 1;
>> --
>> 2.23.0
>> 
>> _______________________________________________
>> vlc-devel mailing list
>> To unsubscribe or modify your subscription options:
>> https://mailman.videolan.org/listinfo/vlc-devel
>> 
>_______________________________________________
>vlc-devel mailing list
>To unsubscribe or modify your subscription options:
>https://mailman.videolan.org/listinfo/vlc-devel

-- 
Envoyé de mon appareil Android avec Courriel K-9 Mail. Veuillez excuser ma brièveté.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mailman.videolan.org/pipermail/vlc-devel/attachments/20190905/0c642087/attachment.html>


More information about the vlc-devel mailing list