From 4eab6d5bf6d398585006142046447a28f00cc23a Mon Sep 17 00:00:00 2001 From: Vincent Povirk Date: Tue, 30 Mar 2010 14:22:06 -0500 Subject: [PATCH 6/8] gdiplus: Fix the linesfilled calculation in GdipMeasureString. --- dlls/gdiplus/graphics.c | 2 +- dlls/gdiplus/tests/graphics.c | 10 +++++----- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index e8c4d0a..f6f5812 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -3516,7 +3516,7 @@ static GpStatus measure_string_callback(GpGraphics *graphics, *args->codepointsfitted = index + length; if (args->linesfilled) - *args->linesfilled += bounds->Height; + (*args->linesfilled)++; return Ok; } diff --git a/dlls/gdiplus/tests/graphics.c b/dlls/gdiplus/tests/graphics.c index 959fbb0..0a6490e 100644 --- a/dlls/gdiplus/tests/graphics.c +++ b/dlls/gdiplus/tests/graphics.c @@ -2490,7 +2490,7 @@ static void test_string_functions(void) ok(char_bounds.Width > 0, "got %0.2f\n", bounds.Width); ok(char_bounds.Height > 0, "got %0.2f\n", bounds.Height); expect(1, codepointsfitted); - todo_wine expect(1, linesfilled); + expect(1, linesfilled); status = GdipMeasureString(graphics, teststring, 2, font, &rc, NULL, &bounds, &codepointsfitted, &linesfilled); expect(Ok, status); @@ -2499,7 +2499,7 @@ static void test_string_functions(void) ok(bounds.Width > char_bounds.Width, "got %0.2f, expected at least %0.2f\n", bounds.Width, char_bounds.Width); expectf(char_bounds.Height, bounds.Height); expect(2, codepointsfitted); - todo_wine expect(1, linesfilled); + expect(1, linesfilled); char_width = bounds.Width - char_bounds.Width; status = GdipMeasureString(graphics, teststring, 6, font, &rc, NULL, &bounds, &codepointsfitted, &linesfilled); @@ -2509,7 +2509,7 @@ static void test_string_functions(void) expectf_(char_bounds.Width + char_width * 3, bounds.Width, 0.01); ok(bounds.Height > char_bounds.Height, "got %0.2f, expected at least %0.2f\n", bounds.Height, char_bounds.Height); expect(6, codepointsfitted); - todo_wine expect(2, linesfilled); + expect(2, linesfilled); char_height = bounds.Height - char_bounds.Height; /* Cut off everything after the first space. */ @@ -2522,7 +2522,7 @@ static void test_string_functions(void) expectf_(char_bounds.Width + char_width, bounds.Width, 0.01); expectf_(char_bounds.Height + char_height * 2, bounds.Height, 0.01); expect(6, codepointsfitted); - todo_wine expect(3, linesfilled); + expect(3, linesfilled); /* Cut off everything including the first space. */ rc.Width = char_bounds.Width + char_width * 1.5; @@ -2534,7 +2534,7 @@ static void test_string_functions(void) expectf_(char_bounds.Width + char_width, bounds.Width, 0.01); expectf_(char_bounds.Height + char_height * 2, bounds.Height, 0.01); expect(6, codepointsfitted); - todo_wine expect(3, linesfilled); + expect(3, linesfilled); /* Cut off everything after the first character. */ rc.Width = char_bounds.Width + char_width * 0.5; -- 1.6.3.3