diff --git a/src/msw/app.cpp b/src/msw/app.cpp index 3c9f75d2ae..b45f930bf4 100644 --- a/src/msw/app.cpp +++ b/src/msw/app.cpp @@ -620,7 +620,6 @@ int wxEntry(WXHINSTANCE hInstance, #else #undef CATCH_PROGRAM_EXCEPTIONS #endif - wxhInstance = (HINSTANCE) hInstance; if (!wxApp::Initialize()) diff --git a/src/msw/choice.cpp b/src/msw/choice.cpp index c6a9f7909f..90714d1e5a 100644 --- a/src/msw/choice.cpp +++ b/src/msw/choice.cpp @@ -318,15 +318,18 @@ bool wxChoice::MSWCommand(WXUINT param, WXWORD WXUNUSED(id)) } int n = GetSelection(); - wxCommandEvent event(wxEVT_COMMAND_CHOICE_SELECTED, m_windowId); - event.SetInt(n); - event.SetEventObject(this); - event.SetString(GetStringSelection()); - if ( HasClientObjectData() ) - event.SetClientObject( GetClientObject(n) ); - else if ( HasClientUntypedData() ) - event.SetClientData( GetClientData(n) ); - ProcessCommand(event); + if (n > -1) + { + wxCommandEvent event(wxEVT_COMMAND_CHOICE_SELECTED, m_windowId); + event.SetInt(n); + event.SetEventObject(this); + event.SetString(GetStringSelection()); + if ( HasClientObjectData() ) + event.SetClientObject( GetClientObject(n) ); + else if ( HasClientUntypedData() ) + event.SetClientData( GetClientData(n) ); + ProcessCommand(event); + } return TRUE; } diff --git a/src/msw/combobox.cpp b/src/msw/combobox.cpp index 9edc9f4145..0593b9342e 100644 --- a/src/msw/combobox.cpp +++ b/src/msw/combobox.cpp @@ -38,11 +38,14 @@ bool wxComboBox::MSWCommand(WXUINT param, WXWORD WXUNUSED(id)) { if (param == CBN_SELCHANGE) { - wxCommandEvent event(wxEVT_COMMAND_COMBOBOX_SELECTED, m_windowId); - event.SetInt(GetSelection()); - event.SetEventObject(this); - event.SetString(GetStringSelection()); - ProcessCommand(event); + if (GetSelection() > -1) + { + wxCommandEvent event(wxEVT_COMMAND_COMBOBOX_SELECTED, m_windowId); + event.SetInt(GetSelection()); + event.SetEventObject(this); + event.SetString(GetStringSelection()); + ProcessCommand(event); + } return TRUE; }