ffmpeg | branch: release/2.3 | Vittorio Giovara <vittorio.giov...@gmail.com> | Tue Jul 15 15:22:11 2014 -0400| [ab1ea597bd69d0d13f655c8934e3fa9c772a0a8d] | committer: Michael Niedermayer
g2meet: allow size changes within original sizes (cherry picked from commit 14b4e64eabc84c5a5e57c8ccc56bbeb95380823b) Signed-off-by: Michael Niedermayer <michae...@gmx.at> > http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=ab1ea597bd69d0d13f655c8934e3fa9c772a0a8d --- libavcodec/g2meet.c | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/libavcodec/g2meet.c b/libavcodec/g2meet.c index 60c48c3..1004e19 100644 --- a/libavcodec/g2meet.c +++ b/libavcodec/g2meet.c @@ -90,6 +90,7 @@ typedef struct G2MContext { int compression; int width, height, bpp; + int orig_width, orig_height; int tile_width, tile_height; int tiles_x, tiles_y, tile_x, tile_y; @@ -712,8 +713,8 @@ static int g2m_decode_frame(AVCodecContext *avctx, void *data, } c->width = bytestream2_get_be32(&bc); c->height = bytestream2_get_be32(&bc); - if (c->width < 16 || c->width > avctx->width || - c->height < 16 || c->height > avctx->height) { + if (c->width < 16 || c->width > c->orig_width || + c->height < 16 || c->height > c->orig_height) { av_log(avctx, AV_LOG_ERROR, "Invalid frame dimensions %dx%d\n", c->width, c->height); @@ -882,6 +883,10 @@ static av_cold int g2m_decode_init(AVCodecContext *avctx) avctx->pix_fmt = AV_PIX_FMT_RGB24; + // store original sizes and check against those if resize happens + c->orig_width = avctx->width; + c->orig_height = avctx->height; + return 0; } _______________________________________________ ffmpeg-cvslog mailing list ffmpeg-cvslog@ffmpeg.org http://ffmpeg.org/mailman/listinfo/ffmpeg-cvslog