summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOliver Wolff <oliver.wolff@qt.io>2017-11-28 13:30:52 +0100
committerOliver Wolff <oliver.wolff@qt.io>2017-11-30 05:23:36 +0000
commit6508fdca1dcc7105947befadba272d0fd4bbc27f (patch)
tree9936bbb1a486947e718e3f430a7e40379c0e390e
parentda50a0b38ceb730ad3c30d600adfe4435a498550 (diff)
ANGLE: D3D11: Fix shared handle support detection for WARP when MinGW is used
The MinGW version we support supports IsWindows8OrGreater so that we can check the windows version properly. As the OpenGL detection falls back to WARP in case of RDP it was possible, that shared handles were wrongly stated as supported, which caused crashes in users' code. Task-number: QTBUG-64657 Change-Id: Iaca2bd169f2764cf6ec68a1d36112a735246b29a Reviewed-by: Andre de la Rocha <andre.rocha@qt.io> Reviewed-by: Andy Shaw <andy.shaw@qt.io>
-rw-r--r--src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp2
-rw-r--r--src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch9
2 files changed, 1 insertions, 10 deletions
diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
index 0173311bc6..5118bdbe9c 100644
--- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
+++ b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.cpp
@@ -2645,7 +2645,7 @@ bool Renderer11::getShareHandleSupport() const
if (deviceType == d3d11::ANGLE_D3D11_DEVICE_TYPE_WARP)
{
-#if !defined(ANGLE_ENABLE_WINDOWS_STORE) && !defined(__GNUC__)
+#ifndef ANGLE_ENABLE_WINDOWS_STORE
if (!IsWindows8OrGreater())
{
// WARP on Windows 7 doesn't support shared handles
diff --git a/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch b/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch
index dc091b0497..f42ff2141b 100644
--- a/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch
+++ b/src/angle/patches/0002-ANGLE-Fix-compilation-with-MinGW.patch
@@ -405,15 +405,6 @@ index ea84783..62badcc 100644
if (mD3d11Module)
{
-@@ -2618,7 +2642,7 @@ bool Renderer11::getShareHandleSupport() const
-
- if (deviceType == d3d11::ANGLE_D3D11_DEVICE_TYPE_WARP)
- {
--#ifndef ANGLE_ENABLE_WINDOWS_STORE
-+#if !defined(ANGLE_ENABLE_WINDOWS_STORE) && !defined(__GNUC__)
- if (!IsWindows8OrGreater())
- {
- // WARP on Windows 7 doesn't support shared handles
diff --git a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.h b/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.h
index 62e9816..b4e7761 100644
--- a/src/3rdparty/angle/src/libANGLE/renderer/d3d/d3d11/Renderer11.h