summaryrefslogtreecommitdiffstats
path: root/src/gallium/state_trackers/nine/device9.c
diff options
context:
space:
mode:
authorPatrick Rudolph <[email protected]>2016-02-10 19:30:20 +0100
committerAxel Davy <[email protected]>2016-05-18 23:37:14 +0200
commitc673c46ccf1ed78eaf68011f32bfb1696f765966 (patch)
tree03d1093c9d3ef0ea909a57fb74a2f441a3ea044b /src/gallium/state_trackers/nine/device9.c
parentdae9a9172703afc979a2fb7d243dd574227e826e (diff)
st/nine: Use new function to query for resolution mismatch
Any third party app might change the current screen resolution. Poll for resolution mismatch to force a device reset. Required for non ex devices only. Signed-off-by: Patrick Rudolph <[email protected]> Reviewed-by: Axel Davy <[email protected]>
Diffstat (limited to 'src/gallium/state_trackers/nine/device9.c')
-rw-r--r--src/gallium/state_trackers/nine/device9.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/gallium/state_trackers/nine/device9.c b/src/gallium/state_trackers/nine/device9.c
index 1744b538717..7edba6b1e9f 100644
--- a/src/gallium/state_trackers/nine/device9.c
+++ b/src/gallium/state_trackers/nine/device9.c
@@ -548,6 +548,9 @@ NineDevice9_TestCooperativeLevel( struct NineDevice9 *This )
if (NineSwapChain9_GetOccluded(This->swapchains[0])) {
This->device_needs_reset = TRUE;
return D3DERR_DEVICELOST;
+ } else if (NineSwapChain9_ResolutionMismatch(This->swapchains[0])) {
+ This->device_needs_reset = TRUE;
+ return D3DERR_DEVICENOTRESET;
} else if (This->device_needs_reset) {
return D3DERR_DEVICENOTRESET;
}