From 563e6d860391bac0511984e5c0842320b5c94d2d Mon Sep 17 00:00:00 2001 From: Michael Niedermayer Date: Tue, 7 Jan 2014 14:38:49 +0100 Subject: segafilm: drop the "song and dance" for cinepak This seems not to do anything any more since a long time, and removing it avoids using uninitialized memory. Also change the error value forwarding as done everywhere else. Partly fixes: msan_uninit-mem_7fb7d24780d0_2744_R03T.CAK Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Vittorio Giovara --- libavformat/segafilm.c | 15 +++------------ 1 file changed, 3 insertions(+), 12 deletions(-) (limited to 'libavformat/segafilm.c') diff --git a/libavformat/segafilm.c b/libavformat/segafilm.c index bbbf7017ee..256c474d47 100644 --- a/libavformat/segafilm.c +++ b/libavformat/segafilm.c @@ -280,18 +280,9 @@ static int film_read_packet(AVFormatContext *s, /* position the stream (will probably be there anyway) */ avio_seek(pb, sample->sample_offset, SEEK_SET); - /* do a special song and dance when loading FILM Cinepak chunks */ - if ((sample->stream == film->video_stream_index) && - (film->video_type == AV_CODEC_ID_CINEPAK)) { - pkt->pos= avio_tell(pb); - if (av_new_packet(pkt, sample->sample_size)) - return AVERROR(ENOMEM); - avio_read(pb, pkt->data, sample->sample_size); - } else { - ret= av_get_packet(pb, pkt, sample->sample_size); - if (ret != sample->sample_size) - ret = AVERROR(EIO); - } + ret = av_get_packet(pb, pkt, sample->sample_size); + if (ret < 0) + return ret; pkt->stream_index = sample->stream; pkt->pts = sample->pts; -- cgit v1.2.3