media-playback: Fix possible crash on startup

Frame width/height check crash if the frame is not given.

We can reorder width/height check after other precondition checks.

(cherry picked from commit 22c4e11ec8)
This commit is contained in:
jeiea
2025-04-28 23:26:29 +09:00
committed by Ryan Foster
parent a3aa940500
commit a9fd4e0d81
+6 -6
View File
@@ -382,12 +382,6 @@ void mp_media_next_video(mp_media_t *m, bool preload)
enum video_range_type new_range;
AVFrame *f = d->frame;
if (!f->width || !f->height) {
blog(LOG_ERROR, "MP: media frame width or height are zero ('%s': %" PRIu32 "x%" PRIu32 ")", m->path,
f->width, f->height);
return;
}
if (!preload) {
if (!mp_media_can_play_frame(m, d))
return;
@@ -400,6 +394,12 @@ void mp_media_next_video(mp_media_t *m, bool preload)
return;
}
if (!f->width || !f->height) {
blog(LOG_ERROR, "MP: media frame width or height are zero ('%s': %" PRIu32 "x%" PRIu32 ")", m->path,
f->width, f->height);
return;
}
bool flip = false;
if (m->swscale) {
int ret = sws_scale(m->swscale, (const uint8_t *const *)f->data, f->linesize, 0, f->height,