wineps: resetdc fix

Huw D M Davies h.davies1 at physics.ox.ac.uk
Wed Nov 5 06:02:21 CST 2003


        Huw Davies <huw at codeweavers.com>
       	Update the visrgn in ResetDC so that GetClipBox works correctly
	after a change in paper size/orientation.
-- 
Huw Davies
huw at codeweavers.com
Index: dlls/wineps/init.c
===================================================================
RCS file: /home/wine/wine/dlls/wineps/init.c,v
retrieving revision 1.52
diff -u -r1.52 init.c
--- dlls/wineps/init.c	5 Nov 2003 00:37:48 -0000	1.52
+++ dlls/wineps/init.c	5 Nov 2003 12:00:50 -0000
@@ -35,6 +35,7 @@
 #include "winreg.h"
 #include "winspool.h"
 #include "winerror.h"
+#include "wownt32.h"
 #include "heap.h"
 
 WINE_DEFAULT_DEBUG_CHANNEL(psdrv);
@@ -386,8 +387,12 @@
 HDC PSDRV_ResetDC( PSDRV_PDEVICE *physDev, const DEVMODEA *lpInitData )
 {
     if(lpInitData) {
+        HRGN hrgn;
         PSDRV_MergeDevmodes(physDev->Devmode, (PSDRV_DEVMODEA *)lpInitData, physDev->pi);
         PSDRV_UpdateDevCaps(physDev);
+        hrgn = CreateRectRgn(0, 0, physDev->horzRes, physDev->vertRes);
+        SelectVisRgn16(HDC_16(physDev->hdc), HRGN_16(hrgn));
+        DeleteObject(hrgn);
     }
     return physDev->hdc;
 }



More information about the wine-patches mailing list