1
0
mirror of https://github.com/FFmpeg/FFmpeg.git synced 2024-12-23 12:43:46 +02:00

Remove use of the deprecated function avcodec_check_dimensions(), use

av_check_image_size() instead.

Originally committed as revision 24711 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Stefano Sabatini 2010-08-06 09:37:04 +00:00
parent 899a507fa6
commit 6ce9b4310c
46 changed files with 92 additions and 54 deletions

View File

@ -19,6 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "binkdata.h"
@ -971,7 +972,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
c->pic.data[0] = NULL;
if (avcodec_check_dimensions(avctx, avctx->width, avctx->height) < 0) {
if (av_check_image_size(avctx->width, avctx->height, 0, avctx) < 0) {
return 1;
}

View File

@ -25,6 +25,7 @@
* @author Marco Gerards <marco@gnu.org>
*/
#include "libavcore/imgutils.h"
#include "dirac.h"
#include "avcodec.h"
#include "golomb.h"
@ -268,7 +269,7 @@ int ff_dirac_parse_sequence_header(AVCodecContext *avctx, GetBitContext *gb,
if (parse_source_parameters(avctx, gb, source))
return -1;
if (avcodec_check_dimensions(avctx, source->width, source->height))
if (av_check_image_size(source->width, source->height, 0, avctx))
return -1;
avcodec_set_dimensions(avctx, source->width, source->height);

View File

@ -22,6 +22,7 @@
//#define TRACE
//#define DEBUG
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "get_bits.h"
#include "dnxhddata.h"
@ -305,7 +306,7 @@ static int dnxhd_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
}
avctx->pix_fmt = PIX_FMT_YUV422P;
if (avcodec_check_dimensions(avctx, ctx->width, ctx->height))
if (av_check_image_size(ctx->width, ctx->height, 0, avctx))
return -1;
avcodec_set_dimensions(avctx, ctx->width, ctx->height);

View File

@ -20,6 +20,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "bytestream.h"
#include "avcodec.h"
@ -139,7 +140,7 @@ static int decode_frame(AVCodecContext *avctx,
if (s->picture.data[0])
avctx->release_buffer(avctx, &s->picture);
if (avcodec_check_dimensions(avctx, w, h))
if (av_check_image_size(w, h, 0, avctx))
return -1;
if (w != avctx->width || h != avctx->height)
avcodec_set_dimensions(avctx, w, h);

View File

@ -29,6 +29,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
typedef struct CmvContext {
@ -156,7 +157,7 @@ static int cmv_decode_frame(AVCodecContext *avctx,
return buf_size;
}
if (avcodec_check_dimensions(s->avctx, s->width, s->height))
if (av_check_image_size(s->width, s->height, 0, s->avctx))
return -1;
/* shuffle */

View File

@ -34,6 +34,7 @@
#include "aandcttab.h"
#include "mpeg12.h"
#include "mpeg12data.h"
#include "libavcore/imgutils.h"
#define EA_PREAMBLE_SIZE 8
#define MADk_TAG MKTAG('M', 'A', 'D', 'k') /* MAD i-frame */
@ -260,7 +261,7 @@ static int decode_frame(AVCodecContext *avctx,
buf += 16;
if (avctx->width != s->width || avctx->height != s->height) {
if (avcodec_check_dimensions(avctx, s->width, s->height) < 0)
if (av_check_image_size(s->width, s->height, 0, avctx) < 0)
return -1;
avcodec_set_dimensions(avctx, s->width, s->height);
if (t->frame.data[0])

View File

@ -32,6 +32,7 @@
#define ALT_BITSTREAM_READER_LE
#include "get_bits.h"
#include "libavutil/lzo.h"
#include "libavcore/imgutils.h"
#define EA_PREAMBLE_SIZE 8
#define kVGT_TAG MKTAG('k', 'V', 'G', 'T')
@ -275,7 +276,7 @@ static int tgv_decode_frame(AVCodecContext *avctx,
}
}
if (avcodec_check_dimensions(avctx, s->width, s->height))
if (av_check_image_size(s->width, s->height, 0, avctx))
return -1;
/* shuffle */

View File

@ -20,6 +20,7 @@
#include "mpegvideo.h"
#include "h263.h"
#include "flv.h"
#include "libavcore/imgutils.h"
void ff_flv2_decode_ac_esc(GetBitContext *gb, int *level, int *run, int *last){
int is11 = get_bits1(gb);
@ -82,7 +83,7 @@ int ff_flv_decode_picture_header(MpegEncContext *s)
width = height = 0;
break;
}
if(avcodec_check_dimensions(s->avctx, width, height))
if(av_check_image_size(width, height, 0, s->avctx))
return -1;
s->width = width;
s->height = height;

View File

@ -22,6 +22,7 @@
//#define DEBUG
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
#include "lzw.h"
@ -296,7 +297,7 @@ static int gif_decode_frame(AVCodecContext *avctx, void *data, int *data_size, A
return -1;
avctx->pix_fmt = PIX_FMT_PAL8;
if (avcodec_check_dimensions(avctx, s->screen_width, s->screen_height))
if (av_check_image_size(s->screen_width, s->screen_height, 0, avctx))
return -1;
avcodec_set_dimensions(avctx, s->screen_width, s->screen_height);

View File

@ -25,6 +25,7 @@
* @author Michael Niedermayer <michaelni@gmx.at>
*/
#include "libavcore/imgutils.h"
#include "internal.h"
#include "dsputil.h"
#include "avcodec.h"
@ -341,7 +342,7 @@ int ff_h264_decode_seq_parameter_set(H264Context *h){
sps->mb_width = get_ue_golomb(&s->gb) + 1;
sps->mb_height= get_ue_golomb(&s->gb) + 1;
if((unsigned)sps->mb_width >= INT_MAX/16 || (unsigned)sps->mb_height >= INT_MAX/16 ||
avcodec_check_dimensions(NULL, 16*sps->mb_width, 16*sps->mb_height)){
av_check_image_size(16*sps->mb_width, 16*sps->mb_height, 0, h->s.avctx)){
av_log(h->s.avctx, AV_LOG_ERROR, "mb_width/height overflow\n");
goto fail;
}

View File

@ -25,6 +25,7 @@
* IFF PBM/ILBM bitmap decoder
*/
#include "libavcore/imgutils.h"
#include "bytestream.h"
#include "avcodec.h"
#include "get_bits.h"
@ -160,7 +161,7 @@ static av_cold int decode_init(AVCodecContext *avctx)
return AVERROR_INVALIDDATA;
}
if ((err = avcodec_check_dimensions(avctx, avctx->width, avctx->height)))
if ((err = av_check_image_size(avctx->width, avctx->height, 0, avctx)))
return err;
s->planesize = FFALIGN(avctx->width, 16) >> 3; // Align plane size in bits to word-boundary
s->planebuf = av_malloc(s->planesize + FF_INPUT_BUFFER_PADDING_SIZE);

View File

@ -515,7 +515,7 @@ int avpicture_fill(AVPicture *picture, uint8_t *ptr,
enum PixelFormat pix_fmt, int width, int height)
{
if(avcodec_check_dimensions(NULL, width, height))
if(av_check_image_size(width, height, 0, NULL))
return -1;
if (av_fill_image_linesizes(picture->linesize, pix_fmt, width))
@ -597,7 +597,7 @@ int avpicture_layout(const AVPicture* src, enum PixelFormat pix_fmt, int width,
int avpicture_get_size(enum PixelFormat pix_fmt, int width, int height)
{
AVPicture dummy_pict;
if(avcodec_check_dimensions(NULL, width, height))
if(av_check_image_size(width, height, 0, NULL))
return -1;
switch (pix_fmt) {
case PIX_FMT_RGB8:

View File

@ -23,6 +23,7 @@
#include <stdlib.h>
#include <string.h>
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "bytestream.h"
@ -995,7 +996,7 @@ static int iv_decode_frame(AVCodecContext *avctx,
image_height = bytestream_get_le16(&buf_pos);
image_width = bytestream_get_le16(&buf_pos);
if(avcodec_check_dimensions(avctx, image_width, image_height))
if(av_check_image_size(image_width, image_height, 0, avctx))
return -1;
if (image_width != avctx->width || image_height != avctx->height) {
int ret;

View File

@ -25,6 +25,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
typedef struct {
@ -50,7 +51,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size, AVPac
h = (buf[1] + 1) * 8;
buf += 2;
if (avcodec_check_dimensions(avctx, w, h))
if (av_check_image_size(w, h, 0, avctx))
return -1;
if (w != avctx->width || h != avctx->height)

View File

@ -105,8 +105,8 @@ static int libdirac_decode_frame(AVCodecContext *avccontext,
/* tell FFmpeg about sequence details */
dirac_sourceparams_t *src_params = &p_dirac_params->p_decoder->src_params;
if (avcodec_check_dimensions(avccontext, src_params->width,
src_params->height) < 0) {
if (av_check_image_size(src_params->width, src_params->height,
0, avccontext) < 0) {
av_log(avccontext, AV_LOG_ERROR, "Invalid dimensions (%dx%d)\n",
src_params->width, src_params->height);
avccontext->height = avccontext->width = 0;

View File

@ -113,7 +113,7 @@ static int libopenjpeg_decode_frame(AVCodecContext *avctx,
}
width = image->comps[0].w << avctx->lowres;
height = image->comps[0].h << avctx->lowres;
if(avcodec_check_dimensions(avctx, width, height) < 0) {
if(av_check_image_size(width, height, 0, avctx) < 0) {
av_log(avctx, AV_LOG_ERROR, "%dx%d dimension invalid.\n", width, height);
goto done;
}

View File

@ -169,8 +169,8 @@ static void libschroedinger_handle_first_access_unit(AVCodecContext *avccontext)
p_schro_params->format = schro_decoder_get_video_format(decoder);
/* Tell FFmpeg about sequence details. */
if (avcodec_check_dimensions(avccontext, p_schro_params->format->width,
p_schro_params->format->height) < 0) {
if (av_check_image_size(p_schro_params->format->width, p_schro_params->format->height,
0, avccontext) < 0) {
av_log(avccontext, AV_LOG_ERROR, "invalid dimensions (%dx%d)\n",
p_schro_params->format->width, p_schro_params->format->height);
avccontext->height = avccontext->width = 0;

View File

@ -86,7 +86,7 @@ static int vp8_decode(AVCodecContext *avctx,
if ((int) img->d_w != avctx->width || (int) img->d_h != avctx->height) {
av_log(avctx, AV_LOG_INFO, "dimension change! %dx%d -> %dx%d\n",
avctx->width, avctx->height, img->d_w, img->d_h);
if (avcodec_check_dimensions(avctx, img->d_w, img->d_h))
if (av_check_image_size(img->d_w, img->d_h, 0, avctx))
return AVERROR_INVALIDDATA;
avcodec_set_dimensions(avctx, img->d_w, img->d_h);
}

View File

@ -33,6 +33,7 @@
//#define DEBUG
#include <assert.h>
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "mjpeg.h"
@ -218,7 +219,7 @@ int ff_mjpeg_decode_sof(MJpegDecodeContext *s)
height= s->height;
av_log(s->avctx, AV_LOG_DEBUG, "sof0: picture: %dx%d\n", width, height);
if(avcodec_check_dimensions(s->avctx, width, height))
if(av_check_image_size(width, height, 0, s->avctx))
return -1;
nb_components = get_bits(&s->gb, 8);

View File

@ -28,6 +28,7 @@
*/
#include "libavutil/intmath.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "internal.h"
@ -510,7 +511,7 @@ av_cold int MPV_common_init(MpegEncContext *s)
return -1;
}
if((s->width || s->height) && avcodec_check_dimensions(s->avctx, s->width, s->height))
if((s->width || s->height) && av_check_image_size(s->width, s->height, 0, s->avctx))
return -1;
dsputil_init(&s->dsp, s->avctx);

View File

@ -23,6 +23,7 @@
#include "libavutil/bswap.h"
#include "libavutil/lzo.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "rtjpeg.h"
@ -111,7 +112,7 @@ static int codec_reinit(AVCodecContext *avctx, int width, int height, int qualit
if (quality >= 0)
get_quant_quality(c, quality);
if (width != c->width || height != c->height) {
if (avcodec_check_dimensions(avctx, height, width) < 0)
if (av_check_image_size(height, width, 0, avctx) < 0)
return 0;
avctx->width = c->width = width;
avctx->height = c->height = height;

View File

@ -22,6 +22,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
#include "get_bits.h"
@ -142,7 +143,7 @@ static int pcx_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
if (p->data[0])
avctx->release_buffer(avctx, p);
if (avcodec_check_dimensions(avctx, w, h))
if (av_check_image_size(w, h, 0, avctx))
return -1;
if (w != avctx->width || h != avctx->height)
avcodec_set_dimensions(avctx, w, h);

View File

@ -24,6 +24,7 @@
* Pictor/PC Paint decoder
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
#include "cga_data.h"
@ -135,7 +136,7 @@ static int decode_frame(AVCodecContext *avctx,
avctx->pix_fmt = PIX_FMT_PAL8;
if (s->width != avctx->width && s->height != avctx->height) {
if (avcodec_check_dimensions(avctx, s->width, s->height) < 0)
if (av_check_image_size(s->width, s->height, 0, avctx) < 0)
return -1;
avcodec_set_dimensions(avctx, s->width, s->height);
if (s->frame.data[0])

View File

@ -18,6 +18,7 @@
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
#include "png.h"
@ -441,7 +442,7 @@ static int decode_frame(AVCodecContext *avctx,
goto fail;
s->width = bytestream_get_be32(&s->bytestream);
s->height = bytestream_get_be32(&s->bytestream);
if(avcodec_check_dimensions(avctx, s->width, s->height)){
if(av_check_image_size(s->width, s->height, 0, avctx)){
s->width= s->height= 0;
goto fail;
}

View File

@ -19,6 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "pnm.h"
@ -101,7 +102,7 @@ int ff_pnm_decode_header(AVCodecContext *avctx, PNMContext * const s)
}
}
/* check that all tags are present */
if (w <= 0 || h <= 0 || maxval <= 0 || depth <= 0 || tuple_type[0] == '\0' || avcodec_check_dimensions(avctx, w, h))
if (w <= 0 || h <= 0 || maxval <= 0 || depth <= 0 || tuple_type[0] == '\0' || av_check_image_size(w, h, 0, avctx))
return -1;
avctx->width = w;
@ -134,7 +135,7 @@ int ff_pnm_decode_header(AVCodecContext *avctx, PNMContext * const s)
return -1;
pnm_get(s, buf1, sizeof(buf1));
avctx->height = atoi(buf1);
if(avcodec_check_dimensions(avctx, avctx->width, avctx->height))
if(av_check_image_size(avctx->width, avctx->height, 0, avctx))
return -1;
if (avctx->pix_fmt != PIX_FMT_MONOWHITE) {
pnm_get(s, buf1, sizeof(buf1));

View File

@ -20,6 +20,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
typedef struct PTXContext {
@ -64,7 +65,7 @@ static int ptx_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
if (p->data[0])
avctx->release_buffer(avctx, p);
if (avcodec_check_dimensions(avctx, w, h))
if (av_check_image_size(w, h, 0, avctx))
return -1;
if (w != avctx->width || h != avctx->height)
avcodec_set_dimensions(avctx, w, h);

View File

@ -22,6 +22,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
@ -62,7 +63,7 @@ static av_cold int qtrle_encode_init(AVCodecContext *avctx)
{
QtrleEncContext *s = avctx->priv_data;
if (avcodec_check_dimensions(avctx, avctx->width, avctx->height) < 0) {
if (av_check_image_size(avctx->width, avctx->height, 0, avctx) < 0) {
return -1;
}
s->avctx=avctx;

View File

@ -25,6 +25,7 @@
* RV10/RV20 decoder
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "mpegvideo.h"
@ -369,7 +370,7 @@ static int rv20_decode_picture_header(MpegEncContext *s)
}
if(new_w != s->width || new_h != s->height){
av_log(s->avctx, AV_LOG_DEBUG, "attempting to change resolution to %dx%d\n", new_w, new_h);
if (avcodec_check_dimensions(s->avctx, new_w, new_h) < 0)
if (av_check_image_size(new_w, new_h, 0, s->avctx) < 0)
return -1;
MPV_common_end(s);
avcodec_set_dimensions(s->avctx, new_w, new_h);

View File

@ -24,6 +24,8 @@
* RV40 decoder
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "mpegvideo.h"
@ -142,7 +144,7 @@ static int rv40_parse_slice_header(RV34DecContext *r, GetBitContext *gb, SliceIn
si->pts = get_bits(gb, 13);
if(!si->type || !get_bits1(gb))
rv40_parse_picture_size(gb, &w, &h);
if(avcodec_check_dimensions(r->s.avctx, w, h) < 0)
if(av_check_image_size(w, h, 0, r->s.avctx) < 0)
return -1;
si->width = w;
si->height = h;

View File

@ -19,6 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "bytestream.h"
#include "sgi.h"
@ -201,7 +202,7 @@ static int decode_frame(AVCodecContext *avctx,
return -1;
}
if (avcodec_check_dimensions(avctx, s->width, s->height))
if (av_check_image_size(s->width, s->height, 0, avctx))
return -1;
avcodec_set_dimensions(avctx, s->width, s->height);

View File

@ -20,6 +20,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
#define RT_OLD 0
@ -97,7 +98,7 @@ static int sunrast_decode_frame(AVCodecContext *avctx, void *data,
if (p->data[0])
avctx->release_buffer(avctx, p);
if (avcodec_check_dimensions(avctx, w, h))
if (av_check_image_size(w, h, 0, avctx))
return -1;
if (w != avctx->width || h != avctx->height)
avcodec_set_dimensions(avctx, w, h);

View File

@ -20,6 +20,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
enum TargaCompr{
@ -145,7 +146,7 @@ static int decode_frame(AVCodecContext *avctx,
if(s->picture.data[0])
avctx->release_buffer(avctx, &s->picture);
if(avcodec_check_dimensions(avctx, w, h))
if(av_check_image_size(w, h, 0, avctx))
return -1;
if(w != avctx->width || h != avctx->height)
avcodec_set_dimensions(avctx, w, h);

View File

@ -33,6 +33,7 @@
#include "faxcompr.h"
#include "libavutil/common.h"
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
typedef struct TiffContext {
AVCodecContext *avctx;
@ -305,7 +306,7 @@ static int tiff_decode_tag(TiffContext *s, const uint8_t *start, const uint8_t *
return -1;
}
if(s->width != s->avctx->width || s->height != s->avctx->height){
if(avcodec_check_dimensions(s->avctx, s->width, s->height))
if(av_check_image_size(s->width, s->height, 0, s->avctx))
return -1;
avcodec_set_dimensions(s->avctx, s->width, s->height);
}
@ -507,7 +508,7 @@ static int decode_frame(AVCodecContext *avctx,
s->bpp = 1;
avctx->pix_fmt = PIX_FMT_MONOBLACK;
if(s->width != s->avctx->width || s->height != s->avctx->height){
if(avcodec_check_dimensions(s->avctx, s->width, s->height))
if(av_check_image_size(s->width, s->height, 0, s->avctx))
return -1;
avcodec_set_dimensions(s->avctx, s->width, s->height);
}

View File

@ -22,6 +22,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "s3tc.h"
@ -79,7 +80,7 @@ static int txd_decode_frame(AVCodecContext *avctx, void *data, int *data_size,
if (p->data[0])
avctx->release_buffer(avctx, p);
if (avcodec_check_dimensions(avctx, w, h))
if (av_check_image_size(w, h, 0, avctx))
return -1;
if (w != avctx->width || h != avctx->height)
avcodec_set_dimensions(avctx, w, h);

View File

@ -235,7 +235,7 @@ int avcodec_default_get_buffer(AVCodecContext *s, AVFrame *pic){
return -1;
}
if(avcodec_check_dimensions(s,w,h))
if(av_check_image_size(w, h, 0, s))
return -1;
if(s->internal_buffer==NULL){
@ -487,7 +487,7 @@ int attribute_align_arg avcodec_open(AVCodecContext *avctx, AVCodec *codec)
#define SANE_NB_CHANNELS 128U
if (((avctx->coded_width || avctx->coded_height)
&& avcodec_check_dimensions(avctx, avctx->coded_width, avctx->coded_height))
&& av_check_image_size(avctx->coded_width, avctx->coded_height, 0, avctx))
|| avctx->channels > SANE_NB_CHANNELS) {
ret = AVERROR(EINVAL);
goto free_and_end;
@ -554,7 +554,7 @@ int attribute_align_arg avcodec_encode_video(AVCodecContext *avctx, uint8_t *buf
av_log(avctx, AV_LOG_ERROR, "buffer smaller than minimum size\n");
return -1;
}
if(avcodec_check_dimensions(avctx,avctx->width,avctx->height))
if(av_check_image_size(avctx->width, avctx->height, 0, avctx))
return -1;
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || pict){
int ret = avctx->codec->encode(avctx, buf, buf_size, pict);
@ -604,7 +604,7 @@ int attribute_align_arg avcodec_decode_video2(AVCodecContext *avctx, AVFrame *pi
int ret;
*got_picture_ptr= 0;
if((avctx->coded_width||avctx->coded_height) && avcodec_check_dimensions(avctx,avctx->coded_width,avctx->coded_height))
if((avctx->coded_width||avctx->coded_height) && av_check_image_size(avctx->coded_width, avctx->coded_height, 0, avctx))
return -1;
if((avctx->codec->capabilities & CODEC_CAP_DELAY) || avpkt->size){
ret = avctx->codec->decode(avctx, picture, got_picture_ptr,

View File

@ -33,6 +33,7 @@
#include <stdlib.h>
#include <string.h>
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "dsputil.h"
#include "get_bits.h"
@ -1980,7 +1981,7 @@ static int theora_decode_header(AVCodecContext *avctx, GetBitContext *gb)
visible_width = s->width = get_bits(gb, 16) << 4;
visible_height = s->height = get_bits(gb, 16) << 4;
if(avcodec_check_dimensions(avctx, s->width, s->height)){
if(av_check_image_size(s->width, s->height, 0, avctx)){
av_log(avctx, AV_LOG_ERROR, "Invalid dimensions (%dx%d)\n", s->width, s->height);
s->width= s->height= 0;
return -1;

View File

@ -22,6 +22,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "vp56.h"
#include "vp8data.h"
@ -224,7 +225,7 @@ static void vp8_decode_flush(AVCodecContext *avctx)
static int update_dimensions(VP8Context *s, int width, int height)
{
if (avcodec_check_dimensions(s->avctx, width, height))
if (av_check_image_size(width, height, 0, s->avctx))
return AVERROR_INVALIDDATA;
vp8_decode_flush(s->avctx);

View File

@ -68,6 +68,7 @@
#include <string.h>
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
#define PALETTE_COUNT 256
@ -147,7 +148,7 @@ static av_cold int vqa_decode_init(AVCodecContext *avctx)
s->vqa_version = vqa_header[0];
s->width = AV_RL16(&vqa_header[6]);
s->height = AV_RL16(&vqa_header[8]);
if(avcodec_check_dimensions(avctx, s->width, s->height)){
if(av_check_image_size(s->width, s->height, 0, avctx)){
s->width= s->height= 0;
return -1;
}

View File

@ -18,6 +18,7 @@
* License along with FFmpeg; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "get_bits.h"
#include "bytestream.h"
@ -76,7 +77,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *data_size,
// read header
w = bytestream_get_le16(&buf);
h = bytestream_get_le16(&buf);
if (avcodec_check_dimensions(avctx, w, h) < 0)
if (av_check_image_size(w, h, 0, avctx) < 0)
return -1;
x = bytestream_get_le16(&buf);
y = bytestream_get_le16(&buf);

View File

@ -24,6 +24,7 @@
*/
#include "libavutil/intreadwrite.h"
#include "libavcore/imgutils.h"
#include "avcodec.h"
#include "get_bits.h"
@ -84,7 +85,7 @@ static av_cold int yop_decode_init(AVCodecContext *avctx)
s->avctx = avctx;
if (avctx->width & 1 || avctx->height & 1 ||
avcodec_check_dimensions(avctx, avctx->width, avctx->height) < 0) {
av_check_image_size(avctx->width, avctx->height, 0, avctx) < 0) {
av_log(avctx, AV_LOG_ERROR, "YOP has invalid dimensions\n");
return -1;
}

View File

@ -1,7 +1,7 @@
include $(SUBDIR)../config.mak
NAME = avdevice
FFLIBS = avformat avcodec avutil
FFLIBS = avformat avcodec avcore avutil
HEADERS = avdevice.h

View File

@ -23,7 +23,7 @@
#define LIBAVDEVICE_VERSION_MAJOR 52
#define LIBAVDEVICE_VERSION_MINOR 2
#define LIBAVDEVICE_VERSION_MICRO 0
#define LIBAVDEVICE_VERSION_MICRO 1
#define LIBAVDEVICE_VERSION_INT AV_VERSION_INT(LIBAVDEVICE_VERSION_MAJOR, \
LIBAVDEVICE_VERSION_MINOR, \

View File

@ -22,6 +22,7 @@
#undef __STRICT_ANSI__ //workaround due to broken kernel headers
#include "config.h"
#include "libavutil/rational.h"
#include "libavcore/imgutils.h"
#include "libavformat/avformat.h"
#include "libavcodec/dsputil.h"
#include <unistd.h>
@ -116,7 +117,7 @@ static int grab_read_header(AVFormatContext *s1, AVFormatParameters *ap)
}
}
if(avcodec_check_dimensions(s1, s->video_win.width, s->video_win.height) < 0)
if(av_check_image_size(s->video_win.width, s->video_win.height, 0, s1) < 0)
return -1;
desired_palette = -1;

View File

@ -43,6 +43,7 @@
#endif
#include <time.h>
#include <strings.h>
#include "libavcore/imgutils.h"
static const int desired_video_buffers = 256;
@ -623,7 +624,7 @@ static int v4l2_read_header(AVFormatContext *s1, AVFormatParameters *ap)
return AVERROR(EIO);
}
if (avcodec_check_dimensions(s1, s->width, s->height) < 0)
if (av_check_image_size(s->width, s->height, 0, s1) < 0)
return AVERROR(EINVAL);
s->frame_format = desired_format;

View File

@ -26,7 +26,7 @@
#define LIBAVFILTER_VERSION_MAJOR 1
#define LIBAVFILTER_VERSION_MINOR 27
#define LIBAVFILTER_VERSION_MICRO 0
#define LIBAVFILTER_VERSION_MICRO 1
#define LIBAVFILTER_VERSION_INT AV_VERSION_INT(LIBAVFILTER_VERSION_MAJOR, \
LIBAVFILTER_VERSION_MINOR, \

View File

@ -28,6 +28,7 @@
#include "parseutils.h"
#include "libavutil/pixdesc.h"
#include "libavutil/colorspace.h"
#include "libavcore/imgutils.h"
#include "libavcore/parseutils.h"
enum { RED = 0, GREEN, BLUE, ALPHA };
@ -406,7 +407,7 @@ static int color_config_props(AVFilterLink *inlink)
color->w &= ~((1 << color->hsub) - 1);
color->h &= ~((1 << color->vsub) - 1);
if (avcodec_check_dimensions(ctx, color->w, color->h) < 0)
if (av_check_image_size(color->w, color->h, 0, ctx) < 0)
return AVERROR(EINVAL);
memcpy(rgba_color, color->color, sizeof(rgba_color));