From a964d3edf5d70e5444a013f905704684f87b1978 Mon Sep 17 00:00:00 2001 From: Vadim Zeitlin Date: Sun, 1 Jun 2008 03:11:32 +0000 Subject: [PATCH] corrected bug in wxMBConvStrictUTF8::FromWChar(): it wrote one extra NUL when used with explicit source length git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@53891 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/strconv.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/common/strconv.cpp b/src/common/strconv.cpp index 102f0d82db..2e887046d3 100644 --- a/src/common/strconv.cpp +++ b/src/common/strconv.cpp @@ -987,7 +987,7 @@ wxMBConvStrictUTF8::FromWChar(char *dst, size_t dstLen, for ( const wchar_t *wp = src; ; wp++ ) { - if ( !(srcLen == wxNO_LEN ? *wp : srcLen--) ) + if ( !(srcLen == wxNO_LEN ? *wp : srcLen) ) { // all done successfully, just add the trailing NULL if we are not // using explicit length @@ -1007,6 +1007,8 @@ wxMBConvStrictUTF8::FromWChar(char *dst, size_t dstLen, return written; } + if ( srcLen != wxNO_LEN ) + srcLen--; wxUint32 code; #ifdef WC_UTF16 -- 2.45.2