diff --git a/controls/combo.c b/controls/combo.c
index 55a64cc4b6a7db27f467ae895e938ad9cd7895f6..11c78e38c47a76c8c9fed8621d3456d917cde63b 100644
--- a/controls/combo.c
+++ b/controls/combo.c
@@ -1089,13 +1089,12 @@ static void CBUpdateEdit( LPHEADCOMBO lphc , INT index )
 {
    INT	length;
    LPWSTR pText = NULL;
+   static const WCHAR empty_stringW[] = { 0 };
 
    TRACE("\t %i\n", index );
 
    if( index >= 0 ) /* got an entry */
    {
-       static const WCHAR empty_stringW[] = { 0 };
-
        length = SendMessageW(lphc->hWndLBox, LB_GETTEXTLEN, (WPARAM)index, 0);
        if( length )
        {
@@ -1105,13 +1104,11 @@ static void CBUpdateEdit( LPHEADCOMBO lphc , INT index )
 				(WPARAM)index, (LPARAM)pText );
 	   }
        }
-
-       lphc->wState |= (CBF_NOEDITNOTIFY | CBF_NOLBSELECT);
-       SendMessageW(lphc->hWndEdit, WM_SETTEXT, 0, pText ? (LPARAM)pText : (LPARAM)empty_stringW);
-       lphc->wState &= ~(CBF_NOEDITNOTIFY | CBF_NOLBSELECT);
    }
-   else
-       InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
+
+   lphc->wState |= (CBF_NOEDITNOTIFY | CBF_NOLBSELECT);
+   SendMessageW(lphc->hWndEdit, WM_SETTEXT, 0, pText ? (LPARAM)pText : (LPARAM)empty_stringW);
+   lphc->wState &= ~(CBF_NOEDITNOTIFY | CBF_NOLBSELECT);
 
    if( lphc->wState & CBF_FOCUSED )
       SendMessageW(lphc->hWndEdit, EM_SETSEL, 0, (LPARAM)(-1));