When combobox selection changes, update its edit box accordingly.

diff --git a/controls/combo.c b/controls/combo.c
index c3e9f33..5961b8a 100644
--- a/controls/combo.c
+++ b/controls/combo.c
@@ -1460,8 +1460,15 @@
 		     CBRollUp( lphc, (HIWORD(wParam) == LBN_SELCHANGE), TRUE );
 		else lphc->wState &= ~CBF_NOROLLUP;
 
+		if( lphc->wState & CBF_EDIT )
+		{
+		    INT index = SendMessageA(lphc->hWndLBox, LB_GETCURSEL, 0, 0);
+		    CBUpdateEdit( lphc, index );
+		}
+		else
+		    InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
+
 		CB_NOTIFY( lphc, CBN_SELCHANGE );
-		InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
 		/* fall through */
 
 	   case LBN_SETFOCUS:
@@ -2078,7 +2085,10 @@
 		if( lphc->wState & CBF_SELCHANGE )
 		{
 		    /* no LBN_SELCHANGE in this case, update manually */
-		    InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
+		    if( lphc->wState & CBF_EDIT )
+			CBUpdateEdit( lphc, (INT)wParam );
+		    else
+			InvalidateRect(CB_HWND(lphc), &lphc->textRect, TRUE);
 		    lphc->wState &= ~CBF_SELCHANGE;
 		}
 	        return  lParam;