[PATCH 2/2] gdiplus: mark regions as unclipped correctly
Rafał Mużyło
galtgendo at gmail.com
Mon Oct 29 17:52:51 CDT 2012
Commits 1418cd796cf00636db3e75df25645e235a1a845d and
bfa35f37a7687cdae338ad9837fc595afb2df2b6 didn't adjust the logic of
whether a region should be treated as unclipped correctly.
-------------- next part --------------
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index c90e976..6b4dc82 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -5164,9 +5164,9 @@ GpStatus WINGDIPAPI GdipMeasureString(GpGraphics *graphics,
scaled_rect.Height = rect->Height * args.rel_height;
if ((format_flags & StringFormatFlagsNoClip) ||
- scaled_rect.Width >= INT_MAX || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
+ scaled_rect.Width >= (REAL)(1 << 23) || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
if ((format_flags & StringFormatFlagsNoClip) ||
- scaled_rect.Height >= INT_MAX || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
+ scaled_rect.Height >= (REAL)(1 << 23) || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
if (scaled_rect.Width >= 0.5)
{
@@ -5174,8 +5174,8 @@ GpStatus WINGDIPAPI GdipMeasureString(GpGraphics *graphics,
if (scaled_rect.Width < 0.5) return Ok; /* doesn't fit */
}
- if (scaled_rect.Width >= INT_MAX || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
- if (scaled_rect.Height >= INT_MAX || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
+ if (scaled_rect.Width >= (REAL)(1 << 23) || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
+ if (scaled_rect.Height >= (REAL)(1 << 23) || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
get_font_hfont(graphics, font, format, &gdifont);
oldfont = SelectObject(hdc, gdifont);
@@ -5343,9 +5343,9 @@ GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string
scaled_rect.Height = rel_height * rect->Height;
if ((format_flags & StringFormatFlagsNoClip) ||
- scaled_rect.Width >= INT_MAX || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
+ scaled_rect.Width >= (REAL)(1 << 23) || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
if ((format_flags & StringFormatFlagsNoClip) ||
- scaled_rect.Height >= INT_MAX || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
+ scaled_rect.Height >= (REAL)(1 << 23) || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
if (scaled_rect.Width >= 0.5)
{
@@ -5353,8 +5353,8 @@ GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string
if (scaled_rect.Width < 0.5) return Ok; /* doesn't fit */
}
- if (scaled_rect.Width >= INT_MAX || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
- if (scaled_rect.Height >= INT_MAX || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
+ if (scaled_rect.Width >= (REAL)(1 << 23) || scaled_rect.Width < 0.5) scaled_rect.Width = (REAL)(1 << 23);
+ if (scaled_rect.Height >= (REAL)(1 << 23) || scaled_rect.Height < 0.5) scaled_rect.Height = (REAL)(1 << 23);
if (!(format_flags & StringFormatFlagsNoClip) &&
scaled_rect.Width != (REAL)(1 << 23) && scaled_rect.Height != (REAL)(1 << 23))
More information about the wine-patches
mailing list