From 1d15686142fd5d53c954aab7526cedab05ef9dc3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kacper=20Michaj=C5=82ow?= Date: Fri, 31 Jul 2026 13:21:52 +0200 Subject: [PATCH] hwdec_d3d11egl: fix EGL_EXT_device_query availability check After ANGLE commit 56663dbfa780 EGL_EXT_device_query is listed in the client extension string instead of the display one. The display string check always failed, silently disabling native d3d11va interop. This fixes `hwdec` with `gpu-context=angle`. --- video/out/opengl/hwdec_d3d11egl.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/video/out/opengl/hwdec_d3d11egl.c b/video/out/opengl/hwdec_d3d11egl.c index 50fcf5a664..90a6cee4ce 100644 --- a/video/out/opengl/hwdec_d3d11egl.c +++ b/video/out/opengl/hwdec_d3d11egl.c @@ -101,11 +101,13 @@ static int init(struct ra_hwdec *hw) GL *gl = ra_gl_get(hw->ra_ctx->ra); const char *exts = eglQueryString(egl_display, EGL_EXTENSIONS); + const char *client_exts = eglQueryString(EGL_NO_DISPLAY, EGL_EXTENSIONS); if (!gl_check_extension(exts, "EGL_ANGLE_d3d_share_handle_client_buffer") || !gl_check_extension(exts, "EGL_ANGLE_stream_producer_d3d_texture") || !(gl_check_extension(gl->extensions, "GL_OES_EGL_image_external_essl3") || gl->es == 200) || - !gl_check_extension(exts, "EGL_EXT_device_query") || + !(gl_check_extension(exts, "EGL_EXT_device_query") || + gl_check_extension(client_exts, "EGL_EXT_device_query")) || !(gl->mpgl_caps & MPGL_CAP_TEX_RG)) return -1;