Module: wine Branch: master Commit: e0f3f020c0572c05673fe3c8189512948472092c URL: http://source.winehq.org/git/wine.git/?a=commit;h=e0f3f020c0572c05673fe3c818...
Author: Alexandre Julliard julliard@winehq.org Date: Thu Jun 16 00:36:06 2016 +0900
wineps.drv: Reset the device path once it has been painted.
Signed-off-by: Alexandre Julliard julliard@winehq.org
---
dlls/wineps.drv/graphics.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
diff --git a/dlls/wineps.drv/graphics.c b/dlls/wineps.drv/graphics.c index 711ab43..7fa0727 100644 --- a/dlls/wineps.drv/graphics.c +++ b/dlls/wineps.drv/graphics.c @@ -516,7 +516,11 @@ static BOOL paint_path( PHYSDEV dev, BOOL stroke, BOOL fill ) int i, size = GetPath( dev->hdc, NULL, NULL, 0 );
if (size == -1) return FALSE; - if (!size) return TRUE; + if (!size) + { + AbortPath( dev->hdc ); + return TRUE; + } points = HeapAlloc( GetProcessHeap(), 0, size * sizeof(*points) ); types = HeapAlloc( GetProcessHeap(), 0, size * sizeof(*types) ); if (!points || !types) goto done; @@ -549,6 +553,7 @@ static BOOL paint_path( PHYSDEV dev, BOOL stroke, BOOL fill ) if (stroke) PSDRV_DrawLine(dev); else PSDRV_WriteNewPath(dev); PSDRV_ResetClip(dev); + AbortPath( dev->hdc );
done: HeapFree( GetProcessHeap(), 0, points );