summaryrefslogtreecommitdiff
path: root/libavformat/smacker.c
diff options
context:
space:
mode:
authorPaul B Mahol <onemda@gmail.com>2012-12-06 18:06:52 +0000
committerPaul B Mahol <onemda@gmail.com>2012-12-06 18:06:52 +0000
commit547b8aeed442dbb3b2cf4a2c507c63e869795cfd (patch)
tree5481555ff247d7336885e93b7df9a991e7e5d0aa /libavformat/smacker.c
parent29c3ebf56e2b54c68c52668937f74a874ecb49ac (diff)
smacker: use meaningful error codes
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Diffstat (limited to 'libavformat/smacker.c')
-rw-r--r--libavformat/smacker.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/libavformat/smacker.c b/libavformat/smacker.c
index be22bec683..883a2b7254 100644
--- a/libavformat/smacker.c
+++ b/libavformat/smacker.c
@@ -110,7 +110,7 @@ static int smacker_read_header(AVFormatContext *s)
/* read and check header */
smk->magic = avio_rl32(pb);
if (smk->magic != MKTAG('S', 'M', 'K', '2') && smk->magic != MKTAG('S', 'M', 'K', '4'))
- return -1;
+ return AVERROR_INVALIDDATA;
smk->width = avio_rl32(pb);
smk->height = avio_rl32(pb);
smk->frames = avio_rl32(pb);
@@ -124,7 +124,7 @@ static int smacker_read_header(AVFormatContext *s)
if(smk->treesize >= UINT_MAX/4){ // smk->treesize + 16 must not overflow (this check is probably redundant)
av_log(s, AV_LOG_ERROR, "treesize too large\n");
- return -1;
+ return AVERROR_INVALIDDATA;
}
//FIXME remove extradata "rebuilding"
@@ -140,7 +140,7 @@ static int smacker_read_header(AVFormatContext *s)
/* setup data */
if(smk->frames > 0xFFFFFF) {
av_log(s, AV_LOG_ERROR, "Too many frames: %i\n", smk->frames);
- return -1;
+ return AVERROR_INVALIDDATA;
}
smk->frm_size = av_malloc(smk->frames * 4);
smk->frm_flags = av_malloc(smk->frames);
@@ -158,7 +158,7 @@ static int smacker_read_header(AVFormatContext *s)
/* init video codec */
st = avformat_new_stream(s, NULL);
if (!st)
- return -1;
+ return AVERROR(ENOMEM);
smk->videoindex = st->index;
st->codec->width = smk->width;
st->codec->height = smk->height;
@@ -216,7 +216,7 @@ static int smacker_read_header(AVFormatContext *s)
av_log(s, AV_LOG_ERROR, "Cannot allocate %i bytes of extradata\n", smk->treesize + 16);
av_free(smk->frm_size);
av_free(smk->frm_flags);
- return -1;
+ return AVERROR(ENOMEM);
}
ret = avio_read(pb, st->codec->extradata + 16, st->codec->extradata_size - 16);
if(ret != st->codec->extradata_size - 16){