[FFmpeg-devel] [PATCH 1/9] lavd/jack: increase buffer size for snprintf()

Andreas Rheinhardt andreas.rheinhardt at outlook.com
Fri Nov 26 17:37:30 EET 2021


Anton Khirnov:
> Maximum output size with a 32-bit int is 17 bytes, or 26 with a 64-bit
> int.
> 
> Silences the following gcc 10 warning:
> src/libavdevice/jack.c: In function ‘audio_read_header’:
> src/libavdevice/jack.c:171:45: warning: ‘snprintf’ output may be truncated before the last format character [-Wformat-truncation=]
>   171 |         snprintf(str, sizeof(str), "input_%d", i + 1);
>       |                                             ^
> src/libavdevice/jack.c:171:9: note: ‘snprintf’ output between 8 and 17 bytes into a destination of size 16
>   171 |         snprintf(str, sizeof(str), "input_%d", i + 1);
>       |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ---
>  libavdevice/jack.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libavdevice/jack.c b/libavdevice/jack.c
> index 31534134f3..0d5465e407 100644
> --- a/libavdevice/jack.c
> +++ b/libavdevice/jack.c
> @@ -167,7 +167,7 @@ static int start_jack(AVFormatContext *context)
>  
>      /* Register JACK ports */
>      for (i = 0; i < self->nports; i++) {
> -        char str[16];
> +        char str[32];
>          snprintf(str, sizeof(str), "input_%d", i + 1);
>          self->ports[i] = jack_port_register(self->client, str,
>                                              JACK_DEFAULT_AUDIO_TYPE,
> 

LGTM.

- Andreas


More information about the ffmpeg-devel mailing list