diff options
author | Piotr Srebrny <piotr.srebrny@qt.io> | 2022-06-24 10:02:03 +0200 |
---|---|---|
committer | Qt Cherry-pick Bot <cherrypick_bot@qt-project.org> | 2022-06-24 11:11:31 +0000 |
commit | e239fb550e0d8aa82ff421ce333405d771242570 (patch) | |
tree | 9d6ad4427e291d9c5d6d463531a160a5e62f1c0e | |
parent | f7ce1b957fab0ae9b5bfe2cdc9e7d2893edb3b09 (diff) |
Release DC context after use
Fixes: QTBUG-104520
Change-Id: Ida7840aaa185a9db96dd366fbc44292586fd81f4
Reviewed-by: André de la Rocha <andre.rocha@qt.io>
(cherry picked from commit 8c78ed8e94ff59bdc629d65475f31fec66adaaf0)
Reviewed-by: Qt Cherry-pick Bot <cherrypick_bot@qt-project.org>
-rw-r--r-- | src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp b/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp index 96c7836cf..27e11cc3a 100644 --- a/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp +++ b/src/plugins/multimedia/windows/evr/evrd3dpresentengine.cpp @@ -391,8 +391,11 @@ static bool readWglNvDxInteropProc(WglNvDxInterop &f) return false; } - auto dc = ::GetDC(::GetShellWindow()); - if (!strstr(wglGetExtensionsStringARB(dc), "WGL_NV_DX_interop")) { + HWND hwnd = ::GetShellWindow(); + auto dc = ::GetDC(hwnd); + bool hasExtension = strstr(wglGetExtensionsStringARB(dc), "WGL_NV_DX_interop"); + ReleaseDC(hwnd, dc); + if (!hasExtension) { qCDebug(qLcEvrD3DPresentEngine) << "WGL_NV_DX_interop missing"; return false; } |