summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorStefano Sabatini <stefano.sabatini-lala@poste.it>2011-03-15 13:03:03 +0100
committerReinhard Tartler <siretart@tauware.de>2011-03-17 07:30:09 +0100
commit68d875addcffe6941e0f75202e3972e37371180f (patch)
treef0fe2fff0ccb29bdc9590633e5d73948c952ace3
parent70abc32314b220cbf4d0a087e52b6ea43bb36b96 (diff)
lavf: make av_interleave_packet() return meaningful error codes
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> (cherry picked from commit c5dcb3d493a6bb73efeb8bfae24f5cc31908201f) Signed-off-by: Reinhard Tartler <siretart@tauware.de>
-rw-r--r--libavformat/utils.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/libavformat/utils.c b/libavformat/utils.c
index 38ff809246..ad00ce83e7 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -3088,6 +3088,7 @@ static int av_interleave_packet(AVFormatContext *s, AVPacket *out, AVPacket *in,
int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt){
AVStream *st= s->streams[ pkt->stream_index];
+ int ret;
//FIXME/XXX/HACK drop zero sized packets
if(st->codec->codec_type == AVMEDIA_TYPE_AUDIO && pkt->size==0)
@@ -3095,11 +3096,11 @@ int av_interleaved_write_frame(AVFormatContext *s, AVPacket *pkt){
av_dlog(s, "av_interleaved_write_frame size:%d dts:%"PRId64" pts:%"PRId64"\n",
pkt->size, pkt->dts, pkt->pts);
- if(compute_pkt_fields2(s, st, pkt) < 0 && !(s->oformat->flags & AVFMT_NOTIMESTAMPS))
- return -1;
+ if((ret = compute_pkt_fields2(s, st, pkt)) < 0 && !(s->oformat->flags & AVFMT_NOTIMESTAMPS))
+ return ret;
if(pkt->dts == AV_NOPTS_VALUE && !(s->oformat->flags & AVFMT_NOTIMESTAMPS))
- return -1;
+ return AVERROR(EINVAL);
for(;;){
AVPacket opkt;