Dmitry Timoshkov : user32: Restore the len == 0 check which got lost in a previous patch.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Nov 22 05:21:15 CST 2006


Module: wine
Branch: master
Commit: 53cf91bcedf0c1d6af032b948ef98e6423cbcd52
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=53cf91bcedf0c1d6af032b948ef98e6423cbcd52

Author: Dmitry Timoshkov <dmitry at codeweavers.com>
Date:   Wed Nov 22 15:18:07 2006 +0800

user32: Restore the len == 0 check which got lost in a previous patch.

---

 dlls/user32/static.c |    9 +++++++--
 1 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/dlls/user32/static.c b/dlls/user32/static.c
index 1e6c1d9..3c9292b 100644
--- a/dlls/user32/static.c
+++ b/dlls/user32/static.c
@@ -682,14 +682,18 @@ static void STATIC_PaintTextfn( HWND hwn
     }
 
     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)
     {
         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))
     {
         /* Windows uses the faster ExtTextOut() to draw the text and
@@ -703,6 +707,7 @@ static void STATIC_PaintTextfn( HWND hwn
         DrawTextW( hdc, text, -1, &rc, wFormat );
     }
 
+no_TextOut:
     HeapFree( GetProcessHeap(), 0, text );
 
     if (hFont)




More information about the wine-cvs mailing list