Commit 170bbd41d3 for ffmpeg
commit 170bbd41d36d595b7ba4e97abea6d064fa695692
Author: Michael Niedermayer <michael@niedermayer.cc>
Date: Mon Oct 19 22:08:13 2026 +0200
avcodec/dpx: release a hwaccel picture left over by a failed frame
A failing hwaccel call returned with the picture still allocated and the
next frame failed the assertion in ff_hwaccel_frame_priv_alloc(). Release
the picture before allocating the next one, as proresdec does.
Fixes: IDrqnHVI4YX3
Fixes: AISLE-2026-0150-00625
Fixes: assertion failure
Assertion failure Replicated through Modified FFmpeg with a failure injected
into the Vulkan hwaccel, with -threads 1
Found-by: Joshua Rogers (AISLE)
The report suggested releasing the picture on the failure paths.
diff --git a/libavcodec/dpx.c b/libavcodec/dpx.c
index a4d9348618..5bbcda4741 100644
--- a/libavcodec/dpx.c
+++ b/libavcodec/dpx.c
@@ -773,6 +773,7 @@ static int decode_frame(AVCodecContext *avctx, AVFrame *p,
buf = avpkt->data + offset;
dpx->frame = p;
+ av_refstruct_unref(&dpx->hwaccel_picture_private);
ret = ff_hwaccel_frame_priv_alloc(avctx, &dpx->hwaccel_picture_private);
if (ret < 0)
return ret;