Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJames Almer <jamrial@gmail.com>2016-11-25 16:40:59 +0300
committerJames Almer <jamrial@gmail.com>2016-11-25 16:40:59 +0300
commit50b14539158bd6d179afebb795b38be108359c4a (patch)
tree607ebc926a20b63acd612c1ba7721027b577c0ce /libavcodec/mpeg4audio.c
parente0791c5aaf1c12601322e410119ca46c6d09981d (diff)
avcodec/mpeg4audio: correctly propagate meaningful error values
Signed-off-by: James Almer <jamrial@gmail.com>
Diffstat (limited to 'libavcodec/mpeg4audio.c')
-rw-r--r--libavcodec/mpeg4audio.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libavcodec/mpeg4audio.c b/libavcodec/mpeg4audio.c
index 01c374fddc..5f85b64cb8 100644
--- a/libavcodec/mpeg4audio.c
+++ b/libavcodec/mpeg4audio.c
@@ -33,10 +33,10 @@
static int parse_config_ALS(GetBitContext *gb, MPEG4AudioConfig *c)
{
if (get_bits_left(gb) < 112)
- return -1;
+ return AVERROR_INVALIDDATA;
if (get_bits_long(gb, 32) != MKBETAG('A','L','S','\0'))
- return -1;
+ return AVERROR_INVALIDDATA;
// override AudioSpecificConfig channel configuration and sample rate
// which are buggy in old ALS conformance files
@@ -127,8 +127,9 @@ int avpriv_mpeg4audio_get_config(MPEG4AudioConfig *c, const uint8_t *buf,
specific_config_bitindex = get_bits_count(&gb);
- if (parse_config_ALS(&gb, c))
- return -1;
+ ret = parse_config_ALS(&gb, c);
+ if (ret < 0)
+ return ret;
}
if (c->ext_object_type != AOT_SBR && sync_extension) {