avcodec/dnxhdenc: do not free nonexistent slice threads data when frame threading...
authorPaul B Mahol <onemda@gmail.com>
Fri, 1 Jun 2018 08:54:39 +0000 (10:54 +0200)
committerPaul B Mahol <onemda@gmail.com>
Fri, 1 Jun 2018 08:54:39 +0000 (10:54 +0200)
Forgotten in 28e9ba951d1a0b0aca53b242aa64f484ca75e874.
Fixes #7241.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
libavcodec/dnxhdenc.c

index 86e71ca..01e22e7 100644 (file)
@@ -1369,8 +1369,10 @@ static av_cold int dnxhd_encode_end(AVCodecContext *avctx)
     av_freep(&ctx->qmatrix_c16);
     av_freep(&ctx->qmatrix_l16);
 
-    for (i = 1; i < avctx->thread_count; i++)
-        av_freep(&ctx->thread[i]);
+    if (avctx->active_thread_type == FF_THREAD_SLICE) {
+        for (i = 1; i < avctx->thread_count; i++)
+            av_freep(&ctx->thread[i]);
+    }
 
     return 0;
 }