summaryrefslogtreecommitdiff
path: root/ffmpeg/libavcodec/sunrast.c
diff options
context:
space:
mode:
authorTim Redfern <tim@eclectronics.org>2013-12-29 12:19:38 +0000
committerTim Redfern <tim@eclectronics.org>2013-12-29 12:19:38 +0000
commitf7813a5324be39d13ab536c245d15dfc602a7849 (patch)
treefad99148b88823d34a5df2f0a25881a002eb291b /ffmpeg/libavcodec/sunrast.c
parentb7a5a477b8ff4d4e3028b9dfb9a9df0a41463f92 (diff)
basic type mechanism working
Diffstat (limited to 'ffmpeg/libavcodec/sunrast.c')
-rw-r--r--ffmpeg/libavcodec/sunrast.c12
1 files changed, 5 insertions, 7 deletions
diff --git a/ffmpeg/libavcodec/sunrast.c b/ffmpeg/libavcodec/sunrast.c
index 1e25b60..d9918f4 100644
--- a/ffmpeg/libavcodec/sunrast.c
+++ b/ffmpeg/libavcodec/sunrast.c
@@ -61,10 +61,6 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
av_log(avctx, AV_LOG_ERROR, "invalid (compression) type\n");
return AVERROR_INVALIDDATA;
}
- if (av_image_check_size(w, h, 0, avctx)) {
- av_log(avctx, AV_LOG_ERROR, "invalid image size\n");
- return AVERROR_INVALIDDATA;
- }
if (maptype == RMT_RAW) {
avpriv_request_sample(avctx, "Unknown colormap type");
return AVERROR_PATCHWELCOME;
@@ -100,8 +96,10 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
return AVERROR_INVALIDDATA;
}
- if (w != avctx->width || h != avctx->height)
- avcodec_set_dimensions(avctx, w, h);
+ ret = ff_set_dimensions(avctx, w, h);
+ if (ret < 0)
+ return ret;
+
if ((ret = ff_get_buffer(avctx, p, 0)) < 0)
return ret;
@@ -209,9 +207,9 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
AVCodec ff_sunrast_decoder = {
.name = "sunrast",
+ .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
.type = AVMEDIA_TYPE_VIDEO,
.id = AV_CODEC_ID_SUNRAST,
.decode = sunrast_decode_frame,
.capabilities = CODEC_CAP_DR1,
- .long_name = NULL_IF_CONFIG_SMALL("Sun Rasterfile image"),
};