diff --git a/src/osd/modules/render/drawd3d.cpp b/src/osd/modules/render/drawd3d.cpp index 140315620d9..ee6eca3eec9 100644 --- a/src/osd/modules/render/drawd3d.cpp +++ b/src/osd/modules/render/drawd3d.cpp @@ -801,8 +801,12 @@ void renderer_d3d9::update_gamma_ramp() // device_create //============================================================ -int renderer_d3d9::device_create(HWND device_hwnd) +int renderer_d3d9::device_create(HWND hwnd) { + // identify the actual window; this is needed so that -attach_window + // can work on a non-root HWND + HWND device_hwnd = GetAncestor(hwnd, GA_ROOT); + // if a device exists, free it if (m_device != nullptr) {