The return code needs to be changed.
int CharacterFunctions::vprintf (juce_wchar* const dest, const int maxLength, const juce_wchar* const format, va_list& args)
{
#ifdef MACOS_10_3_OR_EARLIER
const String formatTemp (format);
size_t num = vprintf ((char*) dest, maxLength, formatTemp, args);
String temp ((char*) dest);
temp.copyToBuffer (dest, num);
dest [num] = 0;
return (int(num) > maxLength) ? -1 : int(num);
#elif defined (JUCE_WIN32)
return (int) _vsnwprintf (dest, maxLength, format, args);
#else
return (int) vswprintf (dest, maxLength, format, args);
#endif
}