user32: Restore the len == 0 check which got lost in a previous patch.
This commit is contained in:
parent
8519a6c49e
commit
53cf91bced
|
@ -682,14 +682,18 @@ static void STATIC_PaintTextfn( HWND hwnd, HDC hdc, DWORD style )
|
||||||
}
|
}
|
||||||
|
|
||||||
buf_size = 256;
|
buf_size = 256;
|
||||||
if (!(text = HeapAlloc( GetProcessHeap(), 0, buf_size * sizeof(WCHAR) ))) return;
|
if (!(text = HeapAlloc( GetProcessHeap(), 0, buf_size * sizeof(WCHAR) )))
|
||||||
|
goto no_TextOut;
|
||||||
|
|
||||||
while ((len = InternalGetWindowText( hwnd, text, buf_size )) == buf_size - 1)
|
while ((len = InternalGetWindowText( hwnd, text, buf_size )) == buf_size - 1)
|
||||||
{
|
{
|
||||||
buf_size *= 2;
|
buf_size *= 2;
|
||||||
if (!(text = HeapReAlloc( GetProcessHeap(), 0, text, buf_size * sizeof(WCHAR) ))) return;
|
if (!(text = HeapReAlloc( GetProcessHeap(), 0, text, buf_size * sizeof(WCHAR) )))
|
||||||
|
goto no_TextOut;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!len) goto no_TextOut;
|
||||||
|
|
||||||
if (((style & SS_TYPEMASK) == SS_SIMPLE) && (style & SS_NOPREFIX))
|
if (((style & SS_TYPEMASK) == SS_SIMPLE) && (style & SS_NOPREFIX))
|
||||||
{
|
{
|
||||||
/* Windows uses the faster ExtTextOut() to draw the text and
|
/* Windows uses the faster ExtTextOut() to draw the text and
|
||||||
|
@ -703,6 +707,7 @@ static void STATIC_PaintTextfn( HWND hwnd, HDC hdc, DWORD style )
|
||||||
DrawTextW( hdc, text, -1, &rc, wFormat );
|
DrawTextW( hdc, text, -1, &rc, wFormat );
|
||||||
}
|
}
|
||||||
|
|
||||||
|
no_TextOut:
|
||||||
HeapFree( GetProcessHeap(), 0, text );
|
HeapFree( GetProcessHeap(), 0, text );
|
||||||
|
|
||||||
if (hFont)
|
if (hFont)
|
||||||
|
|
Loading…
Reference in New Issue