corrected last change to cWC2MB() to also work for encoding with NUL length > 1

git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@39076 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
Vadim Zeitlin 2006-05-06 18:53:43 +00:00
parent 13d92ad62a
commit 168a76fe3d

View File

@ -425,13 +425,9 @@ wxMBConv::cWC2MB(const wchar_t *inBuff, size_t inLen, size_t *outLen) const
size_t dstLen = FromWChar(NULL, 0, inBuff, inLen); size_t dstLen = FromWChar(NULL, 0, inBuff, inLen);
if ( dstLen != wxCONV_FAILED ) if ( dstLen != wxCONV_FAILED )
{ {
if ( !dstLen ) // special case of empty input: can't allocate 0 size buffer below as
{ // wxCharBuffer insists on NUL-terminating it
// special case: can't allocate 0 size buffer below wxCharBuffer buf(dstLen ? dstLen - 1 : 1);
dstLen++;
}
wxCharBuffer buf(dstLen - 1);
if ( FromWChar(buf.data(), dstLen, inBuff, inLen) != wxCONV_FAILED ) if ( FromWChar(buf.data(), dstLen, inBuff, inLen) != wxCONV_FAILED )
{ {
if ( outLen ) if ( outLen )