summaryrefslogtreecommitdiff
path: root/libavcodec/rv10.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/rv10.c')
-rw-r--r--libavcodec/rv10.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/libavcodec/rv10.c b/libavcodec/rv10.c
index 5206533633..57ebdc577c 100644
--- a/libavcodec/rv10.c
+++ b/libavcodec/rv10.c
@@ -28,6 +28,7 @@
#include "libavutil/imgutils.h"
#include "avcodec.h"
#include "error_resilience.h"
+#include "internal.h"
#include "mpegvideo.h"
#include "mpeg4video.h"
#include "h263.h"
@@ -363,8 +364,6 @@ static int rv20_decode_picture_header(RVDecContext *rv)
AVRational old_aspect = s->avctx->sample_aspect_ratio;
av_log(s->avctx, AV_LOG_DEBUG,
"attempting to change resolution to %dx%d\n", new_w, new_h);
- if (av_image_check_size(new_w, new_h, 0, s->avctx) < 0)
- return AVERROR_INVALIDDATA;
ff_MPV_common_end(s);
// attempt to keep aspect during typical resolution switches
@@ -374,7 +373,11 @@ static int rv20_decode_picture_header(RVDecContext *rv)
s->avctx->sample_aspect_ratio = av_mul_q(old_aspect, (AVRational){2, 1});
if (new_w * s->height == 2 * new_h * s->width)
s->avctx->sample_aspect_ratio = av_mul_q(old_aspect, (AVRational){1, 2});
- avcodec_set_dimensions(s->avctx, new_w, new_h);
+
+ ret = ff_set_dimensions(s->avctx, new_w, new_h);
+ if (ret < 0)
+ return ret;
+
s->width = new_w;
s->height = new_h;
if ((ret = ff_MPV_common_init(s)) < 0)