From 1a34f9801715c6658d2021c3fd8545fe065b4f4e Mon Sep 17 00:00:00 2001 From: Alexandre Julliard Date: Fri, 18 Mar 2011 11:47:41 +0100 Subject: [PATCH] gdi32: Find the original driver by checking the CreateDC entry point in CreateCompatibleDC. --- dlls/gdi32/dc.c | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/dlls/gdi32/dc.c b/dlls/gdi32/dc.c index 48b2f789bc3..465349cace9 100644 --- a/dlls/gdi32/dc.c +++ b/dlls/gdi32/dc.c @@ -752,11 +752,9 @@ HDC WINAPI CreateCompatibleDC( HDC hdc ) if (hdc) { if (!(origDC = get_dc_ptr( hdc ))) return 0; - if (GetObjectType( hdc ) == OBJ_DC) - { - physDev = origDC->physDev; - funcs = physDev->funcs; - } + physDev = GET_DC_PHYSDEV( origDC, pCreateDC ); + if (physDev != &origDC->nulldrv) funcs = physDev->funcs; + else physDev = NULL; release_dc_ptr( origDC ); }