Author: spouliot
Date: 2006-09-19 09:36:46 -0400 (Tue, 19 Sep 2006)
New Revision: 65639
Modified:
trunk/libgdiplus/src/ChangeLog
trunk/libgdiplus/src/graphics.c
trunk/libgdiplus/src/stringformat.c
Log:
2006-09-19 Sebastien Pouliot <[EMAIL PROTECTED]>
* graphics.c: Fix parameters checking order and remove duplicates
checks in GdipMeasureCharacterRanges.
* stringformat.c: Set defaults to match MS GDI+.
Modified: trunk/libgdiplus/src/ChangeLog
===================================================================
--- trunk/libgdiplus/src/ChangeLog 2006-09-19 13:33:32 UTC (rev 65638)
+++ trunk/libgdiplus/src/ChangeLog 2006-09-19 13:36:46 UTC (rev 65639)
@@ -1,3 +1,9 @@
+2006-09-19 Sebastien Pouliot <[EMAIL PROTECTED]>
+
+ * graphics.c: Fix parameters checking order and remove duplicates
+ checks in GdipMeasureCharacterRanges.
+ * stringformat.c: Set defaults to match MS GDI+.
+
2006-09-18 Sebastien Pouliot <[EMAIL PROTECTED]>
* graphics.c: Avoid unit conversions, when possible, when measuring
Modified: trunk/libgdiplus/src/graphics.c
===================================================================
--- trunk/libgdiplus/src/graphics.c 2006-09-19 13:33:32 UTC (rev 65638)
+++ trunk/libgdiplus/src/graphics.c 2006-09-19 13:36:46 UTC (rev 65639)
@@ -3587,18 +3587,16 @@
int maxY;
float FontSize;
- if (!graphics || !stringUnicode || length == 0 || !font || !layoutRect
||
- !format || !regions || regionCount != format->charRangeCount)
+ if (!graphics || !stringUnicode || length == 0 || !font || !layoutRect
|| !format || !regions)
return InvalidParameter;
-
+
/* No char range or bounding rect is set for measurements */
if (format->charRangeCount == 0 || layout->Width == 0 || layout->Height
== 0)
return Ok;
- /* Sanity; should we check for length==0? */
- if (!graphics || !stringUnicode || !font) {
- return(InvalidParameter);
- }
+ /* if non-zero (previous check) format->charRangeCount must match
regionCount */
+ if (regionCount != format->charRangeCount)
+ return InvalidParameter;
layoutRect->X = gdip_unitx_convgr (graphics, layout->X);
layoutRect->Y = gdip_unity_convgr (graphics, layout->Y);
Modified: trunk/libgdiplus/src/stringformat.c
===================================================================
--- trunk/libgdiplus/src/stringformat.c 2006-09-19 13:33:32 UTC (rev 65638)
+++ trunk/libgdiplus/src/stringformat.c 2006-09-19 13:36:46 UTC (rev 65639)
@@ -43,8 +43,8 @@
result->lineAlignment = StringAlignmentNear;
result->hotkeyPrefix = HotkeyPrefixNone;
result->formatFlags = formatAttributes;
- result->trimming = StringTrimmingNone;
- result->substitute = DigitSubstituteNone;
+ result->trimming = StringTrimmingCharacter;
+ result->substitute = DigitSubstituteUser;
result->firstTabOffset = 0;
result->tabStops = NULL;
result->numtabStops = 0;
_______________________________________________
Mono-patches maillist - [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches