mirror of
https://git.ffmpeg.org/ffmpeg.git
synced 2024-12-23 07:42:51 +00:00
avformat/swfdec: Use side data to communicate w/h changes to the decoder
Fixes reading from freed data Fixes part of Ticket3539 Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
1587989518
commit
1c55d0ff32
@ -353,11 +353,15 @@ static int swf_read_packet(AVFormatContext *s, AVPacket *pkt)
|
|||||||
avpriv_set_pts_info(vst, 64, 256, swf->frame_rate);
|
avpriv_set_pts_info(vst, 64, 256, swf->frame_rate);
|
||||||
st = vst;
|
st = vst;
|
||||||
}
|
}
|
||||||
st->codec->width = width;
|
|
||||||
st->codec->height = height;
|
|
||||||
|
|
||||||
if ((res = av_new_packet(pkt, out_len - colormapsize * colormapbpp)) < 0)
|
if ((res = av_new_packet(pkt, out_len - colormapsize * colormapbpp)) < 0)
|
||||||
goto bitmap_end;
|
goto bitmap_end;
|
||||||
|
if (!st->codec->width && !st->codec->height) {
|
||||||
|
st->codec->width = width;
|
||||||
|
st->codec->height = height;
|
||||||
|
} else {
|
||||||
|
ff_add_param_change(pkt, 0, 0, 0, width, height);
|
||||||
|
}
|
||||||
pkt->pos = pos;
|
pkt->pos = pos;
|
||||||
pkt->stream_index = st->index;
|
pkt->stream_index = st->index;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user