Huw Davies : wineps: Include the meta region in the clip region.

Alexandre Julliard julliard at winehq.org
Fri Apr 5 16:04:59 CDT 2019


Module: wine
Branch: master
Commit: 18102e9c12a15af81fb863a741d72536167055fa
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=18102e9c12a15af81fb863a741d72536167055fa

Author: Huw Davies <huw at codeweavers.com>
Date:   Fri Apr  5 13:52:14 2019 +0100

wineps: Include the meta region in the clip region.

Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/wineps.drv/clipping.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/dlls/wineps.drv/clipping.c b/dlls/wineps.drv/clipping.c
index 59c8817..62022c9 100644
--- a/dlls/wineps.drv/clipping.c
+++ b/dlls/wineps.drv/clipping.c
@@ -88,8 +88,8 @@ void PSDRV_SetClip( PHYSDEV dev )
         return;
     }
 
-    hrgn = CreateRectRgn(0,0,0,0);
-    if (GetClipRgn(dev->hdc, hrgn))
+    hrgn = CreateRectRgn(0, 0, 0, 0);
+    if (GetRandomRgn(dev->hdc, hrgn, 3) == 1) /* clip && meta */
     {
         PSDRV_WriteGSave(dev);
         PSDRV_AddClip( dev, hrgn );
@@ -104,11 +104,12 @@ void PSDRV_SetClip( PHYSDEV dev )
 void PSDRV_ResetClip( PHYSDEV dev )
 {
     PSDRV_PDEVICE *physDev = get_psdrv_dev( dev );
-    HRGN hrgn = CreateRectRgn(0,0,0,0);
-    BOOL empty;
+    HRGN hrgn;
+
+    if (physDev->pathdepth) return;
 
-    empty = !GetClipRgn(dev->hdc, hrgn);
-    if(!empty && !physDev->pathdepth)
+    hrgn = CreateRectRgn(0, 0, 0, 0);
+    if (GetRandomRgn(dev->hdc, hrgn, 3) == 1) /* clip && meta */
         PSDRV_WriteGRestore(dev);
     DeleteObject(hrgn);
 }




More information about the wine-cvs mailing list