Tim Hentenaar : user32: GetTabbedTextExtent() returns non-zero value when nCount == 0.
Module: wine Branch: master Commit: a415974b2efd97e41dab7ef61d4385c754fcc8b3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=a415974b2efd97e41dab7ef61d... Author: Tim Hentenaar <tim(a)hentenaar.com> Date: Sat Apr 23 07:36:12 2011 -0400 user32: GetTabbedTextExtent() returns non-zero value when nCount == 0. --- dlls/user32/tests/text.c | 3 +++ dlls/user32/text.c | 2 ++ 2 files changed, 5 insertions(+), 0 deletions(-) diff --git a/dlls/user32/tests/text.c b/dlls/user32/tests/text.c index 88ea6b5..b45a312 100644 --- a/dlls/user32/tests/text.c +++ b/dlls/user32/tests/text.c @@ -617,6 +617,9 @@ static void test_TabbedText(void) ret = GetTextMetricsA( hdc, &tm); ok( ret, "GetTextMetrics error %u\n", GetLastError()); + extent = GetTabbedTextExtentA( hdc, "x", 0, 1, tabs); + ok( extent == 0, "GetTabbedTextExtentA returned non-zero on nCount == 0\n"); + extent = GetTabbedTextExtentA( hdc, "x", 1, 1, tabs); cx = LOWORD( extent); cy = HIWORD( extent); diff --git a/dlls/user32/text.c b/dlls/user32/text.c index e34877f..c9ded68 100644 --- a/dlls/user32/text.c +++ b/dlls/user32/text.c @@ -1281,6 +1281,8 @@ static LONG TEXT_TabbedTextOut( HDC hdc, INT x, INT y, LPCWSTR lpstr, int i, j; int start = x; + if (!lpstr || count == 0) return 0; + if (!lpTabPos) cTabStops=0;
participants (1)
-
Alexandre Julliard