From edd170072cdd60d8f55fa49ddbed9c5a6f83bc5d Mon Sep 17 00:00:00 2001 From: Ove Kaaven Date: Sun, 2 Apr 2000 21:05:43 +0000 Subject: [PATCH] Made wxMBConv::c??2?? methods handle conversion failures (by returning a NULL buffer... this causes an assertion failure in buffer.h in debug mode, perhaps that assert should be removed? Well, it's better than completely unpredictable behaviour anyway) git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/branches/WX_2_2_BRANCH@7037 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775 --- src/common/strconv.cpp | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/common/strconv.cpp b/src/common/strconv.cpp index 5ccb485849..997899e769 100644 --- a/src/common/strconv.cpp +++ b/src/common/strconv.cpp @@ -72,6 +72,8 @@ const wxWCharBuffer wxMBConv::cMB2WC(const char *psz) const if (psz) { size_t nLen = MB2WC((wchar_t *) NULL, psz, 0); + if (nLen == (size_t)-1) + return wxWCharBuffer((wchar_t *) NULL); wxWCharBuffer buf(nLen); MB2WC((wchar_t *)(const wchar_t *) buf, psz, nLen); return buf; @@ -85,6 +87,8 @@ const wxCharBuffer wxMBConv::cWC2MB(const wchar_t *psz) const if (psz) { size_t nLen = WC2MB((char *) NULL, psz, 0); + if (nLen == (size_t)-1) + return wxCharBuffer((char *) NULL); wxCharBuffer buf(nLen); WC2MB((char *)(const char *) buf, psz, nLen); return buf;