avcodec/ffv1dec: update progress in case of broken pointer chains
authorMichael Niedermayer <michael@niedermayer.cc>
Fri, 16 Oct 2015 20:25:20 +0000 (22:25 +0200)
committerMichael Niedermayer <michael@niedermayer.cc>
Thu, 12 Nov 2015 01:55:46 +0000 (02:55 +0100)
Fixes deadlock
Fixes Ticket4932

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
(cherry picked from commit 5063a18f5635008b2a45ada1f8c1e21e20450029)

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
libavcodec/ffv1dec.c

index b24be31..dd1f7fd 100644 (file)
@@ -937,6 +937,7 @@ static int decode_frame(AVCodecContext *avctx, void *data, int *got_frame, AVPac
         else                     v = buf_p - c->bytestream_start;
         if (buf_p - c->bytestream_start < v) {
             av_log(avctx, AV_LOG_ERROR, "Slice pointer chain broken\n");
+            ff_thread_report_progress(&f->picture, INT_MAX, 0);
             return AVERROR_INVALIDDATA;
         }
         buf_p -= v;