#if wxUSE_UNICODE
+#ifdef __MWERKS__
+#ifndef __SCHAR_MAX__
+#define __SCHAR_MAX__ 127
+#endif
+#endif
+
wxString wxString::FromAscii(const char *ascii)
{
if (!ascii)
return -1;
}
- len = wxVsnprintf(buf, size, pszFormat, argptr);
+ // wxVsnprintf() may modify the original arg pointer, so pass it
+ // only a copy
+ va_list argptrcopy;
+ wxVaCopy(argptrcopy, argptr);
+ len = wxVsnprintf(buf, size, pszFormat, argptrcopy);
+ va_end(argptrcopy);
// some implementations of vsnprintf() don't NUL terminate
// the string if there is not enough space for it so