%s to %ls conversion
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@16566 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -186,74 +186,6 @@ wxSTD ostream& operator<<(wxSTD ostream& os, const wxString& str)
|
||||
|
||||
#endif //std::string compatibility
|
||||
|
||||
#ifndef wxVsnprintf
|
||||
int WXDLLEXPORT wxVsnprintf(wxChar *buf, size_t len,
|
||||
const wxChar *format, va_list argptr)
|
||||
{
|
||||
#if wxUSE_UNICODE
|
||||
wxString s;
|
||||
int iLen = s.PrintfV(format, argptr);
|
||||
if ( iLen != -1 )
|
||||
{
|
||||
wxStrncpy(buf, s.c_str(), len);
|
||||
buf[len-1] = wxT('\0');
|
||||
}
|
||||
|
||||
return iLen;
|
||||
#else // ANSI
|
||||
// vsnprintf() will not terminate the string with '\0' if there is not
|
||||
// enough place, but we want the string to always be NUL terminated
|
||||
int rc = wxVsnprintfA(buf, len - 1, format, argptr);
|
||||
if ( rc == -1 )
|
||||
{
|
||||
buf[len] = 0;
|
||||
}
|
||||
|
||||
return rc;
|
||||
#endif // Unicode/ANSI
|
||||
}
|
||||
#else
|
||||
// GNU libc 2.2 only has for wxVsnprintf for Unicode called vswprintf
|
||||
// so we imitate wxVsprintf using it.
|
||||
int WXDLLEXPORT wxVsprintf(wxChar *buf,
|
||||
const wxChar *format,
|
||||
va_list argptr)
|
||||
{
|
||||
return vswprintf( buf, 10000, format, argptr );
|
||||
}
|
||||
#endif
|
||||
|
||||
#ifndef wxSnprintf
|
||||
int WXDLLEXPORT wxSnprintf(wxChar *buf, size_t len,
|
||||
const wxChar *format, ...)
|
||||
{
|
||||
va_list argptr;
|
||||
va_start(argptr, format);
|
||||
|
||||
int iLen = wxVsnprintf(buf, len, format, argptr);
|
||||
|
||||
va_end(argptr);
|
||||
|
||||
return iLen;
|
||||
}
|
||||
#else
|
||||
// GNU libc 2.2 only has for wxSnprintf for Unicode called swprintf
|
||||
// so we imitate wxSprintf using it.
|
||||
int WXDLLEXPORT wxSprintf(wxChar *buf,
|
||||
const wxChar *format,
|
||||
...) ATTRIBUTE_PRINTF_2
|
||||
{
|
||||
va_list argptr;
|
||||
va_start(argptr, format);
|
||||
|
||||
int iLen = swprintf(buf, 10000, format, argptr);
|
||||
|
||||
va_end(argptr);
|
||||
|
||||
return iLen;
|
||||
}
|
||||
#endif
|
||||
|
||||
// ----------------------------------------------------------------------------
|
||||
// private classes
|
||||
// ----------------------------------------------------------------------------
|
||||
|
Reference in New Issue
Block a user