From 573f05a7533cd9aed3ed895b4fa4ad8fcba4e56a Mon Sep 17 00:00:00 2001 From: Marton Balint Date: Wed, 3 Mar 2021 23:23:10 +0100 Subject: fftools/ffplay: do not write out of rdft visualization texture If the window is resized it was possible that xpos pointed outside the visualization texture. By rearranging the overflow check we make sure this (and a crash) does not happen. We also don't have to use xleft for start position, as that is 0 anyways, and if we ever want to take into account xleft then the texture should be positioned accordingly when rendering. Signed-off-by: Marton Balint --- fftools/ffplay.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'fftools/ffplay.c') diff --git a/fftools/ffplay.c b/fftools/ffplay.c index 471d4a2ac9..e14c800b8f 100644 --- a/fftools/ffplay.c +++ b/fftools/ffplay.c @@ -1148,6 +1148,8 @@ static void video_audio_display(VideoState *s) if (realloc_texture(&s->vis_texture, SDL_PIXELFORMAT_ARGB8888, s->width, s->height, SDL_BLENDMODE_NONE, 1) < 0) return; + if (s->xpos >= s->width) + s->xpos = 0; nb_display_channels= FFMIN(nb_display_channels, 2); if (rdft_bits != s->rdft_bits) { av_rdft_end(s->rdft); @@ -1197,8 +1199,6 @@ static void video_audio_display(VideoState *s) } if (!s->paused) s->xpos++; - if (s->xpos >= s->width) - s->xpos= s->xleft; } } -- cgit v1.2.1