Module: wine Branch: master Commit: 7aff723ccccd11f416b04501b47289bcc355001c URL: http://source.winehq.org/git/wine.git/?a=commit;h=7aff723ccccd11f416b04501b4...
Author: Dmitry Timoshkov dmitry@codeweavers.com Date: Sun May 25 21:31:20 2008 +0900
gdi32: If there is no clipping rect, EMREXTTEXTOUT shouldn't have a bounding rect.
---
dlls/gdi32/enhmfdrv/graphics.c | 8 ++++++++ 1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/dlls/gdi32/enhmfdrv/graphics.c b/dlls/gdi32/enhmfdrv/graphics.c index 4a695f2..28f34cd 100644 --- a/dlls/gdi32/enhmfdrv/graphics.c +++ b/dlls/gdi32/enhmfdrv/graphics.c @@ -775,6 +775,13 @@ BOOL EMFDRV_ExtTextOut( PHYSDEV dev, INT x, INT y, UINT flags, } }
+ if (!lprect) + { + pemr->rclBounds.left = pemr->rclBounds.top = 0; + pemr->rclBounds.right = pemr->rclBounds.bottom = -1; + goto no_bounds; + } + switch (textAlign & (TA_LEFT | TA_RIGHT | TA_CENTER)) { case TA_CENTER: { pemr->rclBounds.left = x - (textWidth / 2) - 1; @@ -814,6 +821,7 @@ BOOL EMFDRV_ExtTextOut( PHYSDEV dev, INT x, INT y, UINT flags, } }
+no_bounds: ret = EMFDRV_WriteRecord( dev, &pemr->emr ); if(ret) EMFDRV_UpdateBBox( dev, &pemr->rclBounds );