[PATCH 2/2] wined3d: Turn off message filtering temporarily in the Reset() method to allow certain messages (e.g. WM_ACTIVATEAPP) through. (try 2)

John Edmonds pocketcookies2 at gmail.com
Tue May 3 19:22:32 CDT 2011


Toki Tori and RUSH both depend on receing WM_ACTIVATEAPP before they will start. These messages are currently getting filtered out.
This resolves bug #25640.
---
 dlls/d3d9/tests/device.c |    2 +-
 dlls/wined3d/device.c    |    6 ------
 2 files changed, 1 insertions(+), 7 deletions(-)

diff --git a/dlls/d3d9/tests/device.c b/dlls/d3d9/tests/device.c
index b5b20a4..4b257bf 100644
--- a/dlls/d3d9/tests/device.c
+++ b/dlls/d3d9/tests/device.c
@@ -2854,7 +2854,7 @@ static void test_reset_fullscreen(void)
     ok(SUCCEEDED(reset_device(device, device_window, FALSE)), "Failed to reset device.\n");
 
     flush_events();
-    todo_wine ok(expect_messages->message == 0, "Expected to receive message %#x.\n", expect_messages->message);
+    ok(expect_messages->message == 0, "Expected to receive message %#x.\n", expect_messages->message);
     expect_messages = NULL;
 
 cleanup:
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index a57ce5e..5638e99 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -6544,9 +6544,6 @@ static HRESULT WINAPI IWineD3DDeviceImpl_Reset(IWineD3DDevice *iface,
     if (!pPresentationParameters->Windowed != !swapchain->presentParms.Windowed
             || DisplayModeChanged)
     {
-        BOOL filter = This->filter_messages;
-        This->filter_messages = TRUE;
-
         IWineD3DDevice_SetDisplayMode(iface, 0, &mode);
 
         if (!pPresentationParameters->Windowed)
@@ -6559,7 +6556,6 @@ static HRESULT WINAPI IWineD3DDeviceImpl_Reset(IWineD3DDevice *iface,
                 {
                     ERR("Failed to acquire focus window, hr %#x.\n", hr);
                     wined3d_swapchain_decref(swapchain);
-                    This->filter_messages = filter;
                     return hr;
                 }
 
@@ -6583,8 +6579,6 @@ static HRESULT WINAPI IWineD3DDeviceImpl_Reset(IWineD3DDevice *iface,
             IWineD3DDevice_ReleaseFocusWindow(iface);
         }
         swapchain->presentParms.Windowed = pPresentationParameters->Windowed;
-
-        This->filter_messages = filter;
     }
     else if (!pPresentationParameters->Windowed)
     {
-- 
1.7.4.1





More information about the wine-patches mailing list