aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-08-06 19:40:50 +0200
committerMichael Niedermayer <michaelni@gmx.at>2013-08-06 19:40:50 +0200
commitaa24729c213538f2f378696d40c5f5b38dc78d7e (patch)
treee66b92f4a95257f66e025c4d95d9d885ba1c93c2
parent66328da700c73246e2d4c5254905f9e5b4e0fa31 (diff)
parent1c6d2bb9a9279d8df4e8bcdc1e1e2741723dc7c9 (diff)
downloadffmpeg-aa24729c213538f2f378696d40c5f5b38dc78d7e.tar.gz
Merge remote-tracking branch 'qatar/master'
* qatar/master: pcm_bluray: Return AVERROR_INVALIDDATA instead of -1 on header errors Conflicts: libavcodec/pcm-mpeg.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavcodec/pcm-mpeg.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/libavcodec/pcm-mpeg.c b/libavcodec/pcm-mpeg.c
index aec056aa55..0061bc9315 100644
--- a/libavcodec/pcm-mpeg.c
+++ b/libavcodec/pcm-mpeg.c
@@ -1,6 +1,6 @@
/*
* LPCM codecs for PCM formats found in MPEG streams
- * Copyright (c) 2009 Christian Schmidt
+ * Copyright (c) 2009, 2013 Christian Schmidt
*
* This file is part of FFmpeg.
*
@@ -72,7 +72,7 @@ static int pcm_bluray_parse_header(AVCodecContext *avctx,
avctx->bits_per_coded_sample = bits_per_samples[header[3] >> 6];
if (!(avctx->bits_per_coded_sample == 16 || avctx->bits_per_coded_sample == 24)) {
av_log(avctx, AV_LOG_ERROR, "unsupported sample depth (%d)\n", avctx->bits_per_coded_sample);
- return -1;
+ return AVERROR_INVALIDDATA;
}
avctx->sample_fmt = avctx->bits_per_coded_sample == 16 ? AV_SAMPLE_FMT_S16 :
AV_SAMPLE_FMT_S32;
@@ -94,7 +94,7 @@ static int pcm_bluray_parse_header(AVCodecContext *avctx,
avctx->sample_rate = 0;
av_log(avctx, AV_LOG_ERROR, "reserved sample rate (%d)\n",
header[2] & 0x0f);
- return -1;
+ return AVERROR_INVALIDDATA;
}
/*
@@ -108,7 +108,7 @@ static int pcm_bluray_parse_header(AVCodecContext *avctx,
if (!avctx->channels) {
av_log(avctx, AV_LOG_ERROR, "reserved channel configuration (%d)\n",
channel_layout);
- return -1;
+ return AVERROR_INVALIDDATA;
}
avctx->bit_rate = FFALIGN(avctx->channels, 2) * avctx->sample_rate *
@@ -136,11 +136,11 @@ static int pcm_bluray_decode_frame(AVCodecContext *avctx, void *data,
if (buf_size < 4) {
av_log(avctx, AV_LOG_ERROR, "PCM packet too small\n");
- return -1;
+ return AVERROR_INVALIDDATA;
}
- if (pcm_bluray_parse_header(avctx, src))
- return -1;
+ if ((retval = pcm_bluray_parse_header(avctx, src)))
+ return retval;
src += 4;
buf_size -= 4;