[PATCH 2/5] wined3d: Hold the wined3d mutex in device_process_message().

Henri Verbeet hverbeet at codeweavers.com
Wed Jan 11 14:27:30 CST 2012


---
 dlls/wined3d/device.c |    6 ++++++
 1 files changed, 6 insertions(+), 0 deletions(-)

diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 3551a14..b5d5111 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -6020,8 +6020,12 @@ void get_drawable_size_backbuffer(const struct wined3d_context *context, UINT *w
 LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL unicode,
         UINT message, WPARAM wparam, LPARAM lparam, WNDPROC proc)
 {
+    wined3d_mutex_lock();
+
     if (device->filter_messages)
     {
+        wined3d_mutex_unlock();
+
         TRACE("Filtering message: window %p, message %#x, wparam %#lx, lparam %#lx.\n",
                 window, message, wparam, lparam);
         if (unicode)
@@ -6043,6 +6047,8 @@ LRESULT device_process_message(struct wined3d_device *device, HWND window, BOOL
         device->device_parent->ops->mode_changed(device->device_parent);
     }
 
+    wined3d_mutex_unlock();
+
     if (unicode)
         return CallWindowProcW(proc, window, message, wparam, lparam);
     else
-- 
1.7.3.4




More information about the wine-patches mailing list