Merge remote-tracking branch 'qatar/master'
* qatar/master: print_options: do not generate docs for options without enc or dec flags mpeg12: do not fail on zero dimensions in the sequence header. Conflicts: libavcodec/mpeg12.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
		@@ -39,6 +39,9 @@ static void print_usage(void)
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
static void print_option(const AVOption *opts, const AVOption *o, int per_stream)
 | 
					static void print_option(const AVOption *opts, const AVOption *o, int per_stream)
 | 
				
			||||||
{
 | 
					{
 | 
				
			||||||
 | 
					    if (!(o->flags & (AV_OPT_FLAG_DECODING_PARAM | AV_OPT_FLAG_ENCODING_PARAM)))
 | 
				
			||||||
 | 
					        return;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    printf("@item -%s%s @var{", o->name, per_stream ? "[:stream_specifier]" : "");
 | 
					    printf("@item -%s%s @var{", o->name, per_stream ? "[:stream_specifier]" : "");
 | 
				
			||||||
    switch (o->type) {
 | 
					    switch (o->type) {
 | 
				
			||||||
    case AV_OPT_TYPE_BINARY:   printf("hexadecimal string"); break;
 | 
					    case AV_OPT_TYPE_BINARY:   printf("hexadecimal string"); break;
 | 
				
			||||||
 
 | 
				
			|||||||
@@ -2026,6 +2026,12 @@ static int mpeg1_decode_sequence(AVCodecContext *avctx,
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
    width  = get_bits(&s->gb, 12);
 | 
					    width  = get_bits(&s->gb, 12);
 | 
				
			||||||
    height = get_bits(&s->gb, 12);
 | 
					    height = get_bits(&s->gb, 12);
 | 
				
			||||||
 | 
					    if (width == 0 || height == 0) {
 | 
				
			||||||
 | 
					        av_log(avctx, AV_LOG_WARNING, "Invalid horizontal or vertical size "
 | 
				
			||||||
 | 
					               "value.\n");
 | 
				
			||||||
 | 
					        if (avctx->err_recognition & AV_EF_BITSTREAM)
 | 
				
			||||||
 | 
					            return AVERROR_INVALIDDATA;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
    s->aspect_ratio_info = get_bits(&s->gb, 4);
 | 
					    s->aspect_ratio_info = get_bits(&s->gb, 4);
 | 
				
			||||||
    if (s->aspect_ratio_info == 0) {
 | 
					    if (s->aspect_ratio_info == 0) {
 | 
				
			||||||
        av_log(avctx, AV_LOG_ERROR, "aspect ratio has forbidden 0 value\n");
 | 
					        av_log(avctx, AV_LOG_ERROR, "aspect ratio has forbidden 0 value\n");
 | 
				
			||||||
@@ -2343,7 +2349,8 @@ static int decode_chunks(AVCodecContext *avctx,
 | 
				
			|||||||
            picture_start_code_seen = 1;
 | 
					            picture_start_code_seen = 1;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (s2->width <= 0 || s2->height <= 0) {
 | 
					            if (s2->width <= 0 || s2->height <= 0) {
 | 
				
			||||||
                av_log(avctx, AV_LOG_ERROR, "%dx%d is invalid\n", s2->width, s2->height);
 | 
					                av_log(avctx, AV_LOG_ERROR, "Invalid frame dimensions %dx%d.\n",
 | 
				
			||||||
 | 
					                       s2->width, s2->height);
 | 
				
			||||||
                return AVERROR_INVALIDDATA;
 | 
					                return AVERROR_INVALIDDATA;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 
 | 
				
			|||||||
		Reference in New Issue
	
	Block a user