user32: Don't invalidate ComboBox on CB_SETCURSEL message.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
diff --git a/dlls/user32/combo.c b/dlls/user32/combo.c
index ee9ce0a..149a495 100644
--- a/dlls/user32/combo.c
+++ b/dlls/user32/combo.c
@@ -2142,10 +2142,7 @@
 	            SendMessageW(lphc->hWndLBox, LB_SETTOPINDEX, wParam, 0);
 
 		/* no LBN_SELCHANGE in this case, update manually */
-		if( lphc->wState & CBF_EDIT )
-		    CBUpdateEdit( lphc, (INT)wParam );
-		else
-		    InvalidateRect(lphc->self, &lphc->textRect, TRUE);
+                CBPaintText( lphc, NULL );
 		lphc->wState &= ~CBF_SELCHANGE;
 	        return  lParam;
 	case CB_GETLBTEXT:
diff --git a/dlls/user32/tests/msg.c b/dlls/user32/tests/msg.c
index 1d34fd2..1b4f6fa 100644
--- a/dlls/user32/tests/msg.c
+++ b/dlls/user32/tests/msg.c
@@ -6937,7 +6937,7 @@
     log_all_parent_messages++;
     SendMessageA(combo, CB_SETCURSEL, 0, 0);
     log_all_parent_messages--;
-    ok_sequence(SetCurSelComboSeq, "CB_SETCURSEL on a ComboBox", TRUE);
+    ok_sequence(SetCurSelComboSeq, "CB_SETCURSEL on a ComboBox", FALSE);
 
     DestroyWindow(combo);
     DestroyWindow(parent);