{
// get the size of required buffer
UINT lenAnsi = strlen(sz);
+ #ifdef __MWERKS__
+ UINT lenWide = lenAnsi * 2 ;
+ #else
UINT lenWide = mbstowcs(NULL, sz, lenAnsi);
+ #endif
if ( lenWide > 0 ) {
m_wzBuf = new OLECHAR[lenWide + 1];
// FIXME this is a temp hack only until I understand better what
// must be done in both ANSI and Unicode builds
size_t lenAnsi = tool->m_shortHelpString.Len();
+ #ifdef __MWERKS__
+ wchar_t *pwz = new wchar_t[lenAnsi * 2 + 1];
+ #else
size_t lenUnicode = mbstowcs(NULL, tool->m_shortHelpString, lenAnsi);
wchar_t *pwz = new wchar_t[lenUnicode + 1];
+ #endif
mbstowcs(pwz, tool->m_shortHelpString, lenAnsi + 1);
memcpy(ttText->szText, pwz,
(sizeof(ttText->szText) - 1)/sizeof(ttText->szText[0]));