We could wrongly return NULL client data if -1 was stored as client data in
wxChoice because it's the same value as CB_ERR and we always interpreted it as
an error, while it may not be one if GetLastError() doesn't indicate it.
See #13883.
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@70414
c3d73ce0-8a6f-49c7-b76d-
6d57e0e08775
void* wxChoice::DoGetItemClientData(unsigned int n) const
{
LPARAM rc = SendMessage(GetHwnd(), CB_GETITEMDATA, n, 0);
- if ( rc == CB_ERR )
+ if ( rc == CB_ERR && GetLastError() != ERROR_SUCCESS )
{
wxLogLastError(wxT("CB_GETITEMDATA"));