Some Linux wchar_t/jschar stuff.. JS uses UTF-16/UCS-2, so convert wchar strings before handing to JS unicode interfaces.
This was SVN commit r902.
This commit is contained in:
parent
f01b1ebb58
commit
b986ff832b
@ -115,7 +115,7 @@ void CBoundObjectProperty<CStrW>::set( const jsval value )
|
||||
|
||||
jsval CBoundObjectProperty<CStrW>::tojsval()
|
||||
{
|
||||
return( STRING_TO_JSVAL( JS_NewUCStringCopyZ( g_ScriptingHost.getContext(), m_String.c_str() ) ) );
|
||||
return( STRING_TO_JSVAL( JS_NewUCStringCopyZ( g_ScriptingHost.getContext(), utf16().c_str() ) ) );
|
||||
}
|
||||
|
||||
CBoundObjectProperty<CVector3D>::CBoundObjectProperty()
|
||||
|
@ -136,8 +136,10 @@ JSBool JSI_Entity::toString( JSContext* cx, JSObject* obj, uintN argc, jsval* ar
|
||||
HEntity* e = (HEntity*)JS_GetPrivate( cx, obj );
|
||||
|
||||
wchar_t buffer[256];
|
||||
_snwprintf( buffer, 256, L"[object Entity: \"%ls\" (%ls)]", (const wchar_t*)(*e)->m_name, (const wchar_t*)(*e)->m_base->m_name );
|
||||
swprintf( buffer, 256, L"[object Entity: \"%ls\" (%ls)]", (*e)->m_name.c_str(), (*e)->m_base->m_name.c_str() );
|
||||
buffer[255] = 0;
|
||||
*rval = STRING_TO_JSVAL( JS_NewUCStringCopyZ( cx, buffer ) );
|
||||
utf16_t utfbuf[256];
|
||||
std::copy(buffer, buffer+256, utfbuf);
|
||||
*rval = STRING_TO_JSVAL( JS_NewUCStringCopyZ( cx, utfbuf ) );
|
||||
return( JS_TRUE );
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user