Module: wine Branch: master Commit: be3a9b5ecb7f15f908323cf4b7ad09f3035a62ca URL: http://source.winehq.org/git/wine.git/?a=commit;h=be3a9b5ecb7f15f908323cf4b7...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Wed Jan 11 21:27:30 2012 +0100
wined3d: Hold the wined3d mutex in device_process_message().
---
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