avcodec/pngdec: Replace assert by request for sample for unsupported TRNS cases
authorMichael Niedermayer <michael@niedermayer.cc>
Mon, 16 Nov 2015 17:34:44 +0000 (18:34 +0100)
committerMichael Niedermayer <michael@niedermayer.cc>
Mon, 16 Nov 2015 17:48:02 +0000 (18:48 +0100)
Fixes assertion failure
Fixes: 7f646252a30ee28b583aac1f82e7985e/signal_sigabrt_7ffff6ae7cc9_7353_62fc077bf2f454d39e188c69807193a6.png

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/pngdec.c

index fe81d02..3059087 100644 (file)
@@ -665,7 +665,10 @@ static int decode_idat_chunk(AVCodecContext *avctx, PNGDecContext *s,
                 break;
 
             default:
-                av_assert0(0);
+                avpriv_request_sample(avctx, "bit depth %d "
+                        "and color type %d with TRNS",
+                        s->bit_depth, s->color_type);
+                return AVERROR_INVALIDDATA;
             }
 
             s->bpp += byte_depth;