always return length of the string, *not* size of the buffer from wxMBConv_win32::MB<->WC(), as documented (fixes bug reported in patch 789039)
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@23938 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -1137,9 +1137,10 @@ public:
|
|||||||
buf ? n : 0 // size of output buffer
|
buf ? n : 0 // size of output buffer
|
||||||
);
|
);
|
||||||
|
|
||||||
// note that it returns # of written chars for buf != NULL and *size*
|
// note that it returns count of written chars for buf != NULL and size
|
||||||
// of the needed buffer for buf == NULL
|
// of the needed buffer for buf == NULL so in either case the length of
|
||||||
return len ? (buf ? len : len - 1) : (size_t)-1;
|
// the string (which never includes the terminating NUL) is one less
|
||||||
|
return len ? len - 1 : (size_t)-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const
|
size_t WC2MB(char *buf, const wchar_t *psz, size_t n) const
|
||||||
@@ -1156,8 +1157,8 @@ public:
|
|||||||
NULL // [out] was it used?
|
NULL // [out] was it used?
|
||||||
);
|
);
|
||||||
|
|
||||||
// see the comment above!
|
// see the comment above for the reason of "len - 1"
|
||||||
return len ? (buf ? len : len - 1) : (size_t)-1;
|
return len ? len - 1 : (size_t)-1;
|
||||||
}
|
}
|
||||||
|
|
||||||
bool IsOk() const
|
bool IsOk() const
|
||||||
|
Reference in New Issue
Block a user