Jan Zerebecki : d3d8: CreateDevice should use the root of the current window.

Alexandre Julliard julliard at wine.codeweavers.com
Mon Jan 30 12:44:59 CST 2006


Module: wine
Branch: refs/heads/master
Commit: c1c3cc2a070906cee20d7aa75eab1857ff3bc830
URL:    http://source.winehq.org/git/?p=wine.git;a=commit;h=c1c3cc2a070906cee20d7aa75eab1857ff3bc830

Author: Jan Zerebecki <jan.wine at zerebecki.de>
Date:   Mon Jan 30 18:16:33 2006 +0100

d3d8: CreateDevice should use the root of the current window.

---

 dlls/d3d8/directx.c |    6 +++++-
 1 files changed, 5 insertions(+), 1 deletions(-)

diff --git a/dlls/d3d8/directx.c b/dlls/d3d8/directx.c
index a324855..1c5ce59 100644
--- a/dlls/d3d8/directx.c
+++ b/dlls/d3d8/directx.c
@@ -713,8 +713,12 @@ HRESULT  WINAPI  IDirect3D8Impl_CreateDe
     if (!whichHWND) {
         whichHWND = hFocusWindow;
     }
+    whichHWND = GetAncestor(whichHWND, GA_ROOT);
+    if ( !( object->win = (Window)GetPropA(whichHWND, "__wine_x11_whole_window") ) ) {
+        ERR("Can't get drawable (window), HWND:%p doesn't have the property __wine_x11_whole_window\n", whichHWND);
+        return D3DERR_NOTAVAILABLE;
+    }
     object->win_handle = whichHWND;
-    object->win     = (Window)GetPropA( whichHWND, "__wine_x11_whole_window" );
 
     hDc = GetDC(whichHWND);
     object->display = get_display(hDc);




More information about the wine-cvs mailing list