diff --git a/subsystems/win32/win32k/objects/line.c b/subsystems/win32/win32k/objects/line.c index 3ed9c1f3274..03069e36f44 100644 --- a/subsystems/win32/win32k/objects/line.c +++ b/subsystems/win32/win32k/objects/line.c @@ -435,8 +435,6 @@ NtGdiPolyDraw( dc = DC_LockDc(hdc); if (!dc) return FALSE; pdcattr = dc->pdcattr; - DC_vPrepareDCsForBlit(dc, dc->rosdc.CombinedClip->rclBounds, - NULL, dc->rosdc.CombinedClip->rclBounds); _SEH2_TRY { @@ -503,7 +501,6 @@ NtGdiPolyDraw( } _SEH2_END; - DC_vFinishBlit(dc, NULL); DC_UnlockDc(dc); return result; diff --git a/subsystems/win32/win32k/objects/path.c b/subsystems/win32/win32k/objects/path.c index 1c514418412..8d15f8fa4be 100644 --- a/subsystems/win32/win32k/objects/path.c +++ b/subsystems/win32/win32k/objects/path.c @@ -2622,7 +2622,12 @@ NtGdiStrokePath(HDC hDC) if (pdcattr->ulDirty_ & (DIRTY_LINE | DC_PEN_DIRTY)) DC_vUpdateLineBrush(pDc); + DC_vPrepareDCsForBlit(pDc, pDc->rosdc.CombinedClip->rclBounds, + NULL, pDc->rosdc.CombinedClip->rclBounds); + bRet = PATH_StrokePath(pDc, pPath); + + DC_vFinishBlit(pDc, NULL); PATH_EmptyPath(pPath); PATH_UnlockPath( pPath );