[PATCH 4/5] wined3d: Register a window only once.

Henri Verbeet hverbeet at codeweavers.com
Wed Nov 10 03:53:03 CST 2010


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

diff --git a/dlls/wined3d/wined3d_main.c b/dlls/wined3d/wined3d_main.c
index 0932351..0e44702 100644
--- a/dlls/wined3d/wined3d_main.c
+++ b/dlls/wined3d/wined3d_main.c
@@ -422,6 +422,13 @@ BOOL wined3d_register_window(HWND window, IWineD3DDeviceImpl *device)
 
     wined3d_mutex_lock();
 
+    if (wined3d_find_wndproc(window))
+    {
+        wined3d_mutex_unlock();
+        WARN("Window %p is already registered with wined3d.\n", window);
+        return TRUE;
+    }
+
     if (wndproc_table.size == wndproc_table.count)
     {
         unsigned int new_size = max(1, wndproc_table.size * 2);
-- 
1.7.2.2




More information about the wine-patches mailing list