avutil/hwcontext_qsv: fix fall-through in qsv_fixed_pool_map_to()

The break only applied to the matching case, so every non-matching
surface fell into the next case and reinterpreted the same mfxHDLPair
under another API.

Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
This commit is contained in:
Kacper Michajłow committed 2026-08-10 20:34:48 +02:00
1 parent 9674156cc6
commit f25dd4e26f
1 file changed
+6 -9
+6 -9
View File
@@ -2154,10 +2154,9 @@ static int qsv_fixed_pool_map_to(AVHWFramesContext *dst_ctx,
case AV_PIX_FMT_VAAPI:
{
mfxHDLPair *pair = (mfxHDLPair*)hwctx->surfaces[i].Data.MemId;
if (*(VASurfaceID*)pair->first == (VASurfaceID)(uintptr_t)src->data[3]) {
if (*(VASurfaceID*)pair->first == (VASurfaceID)(uintptr_t)src->data[3])
index = i;
break;
}
break;
}
#endif
#if CONFIG_D3D11VA
@@ -2166,20 +2165,18 @@ static int qsv_fixed_pool_map_to(AVHWFramesContext *dst_ctx,
mfxHDLPair *pair = (mfxHDLPair*)hwctx->surfaces[i].Data.MemId;
if (pair->first == src->data[0]
&& (pair->second == src->data[1]
|| (pair->second == (mfxMemId)MFX_INFINITE && src->data[1] == (uint8_t *)0))) {
|| (pair->second == (mfxMemId)MFX_INFINITE && src->data[1] == (uint8_t *)0)))
index = i;
break;
}
break;
}
#endif
#if CONFIG_DXVA2
case AV_PIX_FMT_DXVA2_VLD:
{
mfxHDLPair *pair = (mfxHDLPair*)hwctx->surfaces[i].Data.MemId;
if (pair->first == src->data[3]) {
if (pair->first == src->data[3])
index = i;
break;
}
break;
}
#endif
}