don't crash when streaming out a wxString into an std::ostream, just set the failbit instead
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@56214 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -168,7 +168,13 @@ static wxStrCacheStatsDumper s_showCacheStats;
|
|||||||
wxSTD ostream& operator<<(wxSTD ostream& os, const wxCStrData& str)
|
wxSTD ostream& operator<<(wxSTD ostream& os, const wxCStrData& str)
|
||||||
{
|
{
|
||||||
#if wxUSE_UNICODE && !wxUSE_UNICODE_UTF8
|
#if wxUSE_UNICODE && !wxUSE_UNICODE_UTF8
|
||||||
return os << (const char *)str.AsCharBuf();
|
const wxCharBuffer buf(str.AsCharBuf());
|
||||||
|
if ( !buf )
|
||||||
|
os.clear(wxSTD ios_base::failbit);
|
||||||
|
else
|
||||||
|
os << buf.data();
|
||||||
|
|
||||||
|
return os;
|
||||||
#else
|
#else
|
||||||
return os << str.AsInternal();
|
return os << str.AsInternal();
|
||||||
#endif
|
#endif
|
||||||
|
Reference in New Issue
Block a user