fix the code to not use dangling pointers resulting in asserts about invalid Unicode strings mentioned in the bug 1880411
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@51388 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1312,11 +1312,10 @@ void MyPanel::OnListBoxButtons( wxCommandEvent &event )
|
|||||||
|
|
||||||
#if wxUSE_CHOICE
|
#if wxUSE_CHOICE
|
||||||
|
|
||||||
static const wxChar *GetDataString(wxClientData *data)
|
static wxString GetDataString(wxClientData *data)
|
||||||
{
|
{
|
||||||
return (
|
return data ? wx_static_cast(wxStringClientData *, data)->GetData()
|
||||||
data ? wx_static_cast(wxStringClientData *, data)->GetData() : wxString("none")
|
: wxString("none");
|
||||||
).c_str();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void MyPanel::OnChoice( wxCommandEvent &event )
|
void MyPanel::OnChoice( wxCommandEvent &event )
|
||||||
@@ -1334,8 +1333,8 @@ void MyPanel::OnChoice( wxCommandEvent &event )
|
|||||||
_T("data \"%s\"/\"%s\""),
|
_T("data \"%s\"/\"%s\""),
|
||||||
(int)event.GetInt(),
|
(int)event.GetInt(),
|
||||||
sel,
|
sel,
|
||||||
event.GetString().c_str(),
|
event.GetString(),
|
||||||
choice->GetStringSelection().c_str(),
|
choice->GetStringSelection(),
|
||||||
GetDataString(dataEvt),
|
GetDataString(dataEvt),
|
||||||
GetDataString(dataCtrl));
|
GetDataString(dataCtrl));
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user