Better Unicode support in the console

This was SVN commit r1038.
This commit is contained in:
Ykkrosh
2004-08-24 11:07:50 +00:00
parent 506b283844
commit 9fa5e3b57a
3 changed files with 36 additions and 17 deletions
+13 -4
View File
@@ -279,9 +279,11 @@ bool ScriptingHost::ValueToBool(const jsval value)
std::string ScriptingHost::ValueToString(const jsval value)
{
JSString * string = JS_ValueToString(m_Context, value);
JSString* string = JS_ValueToString(m_Context, value);
if (string == NULL)
throw PSERROR_Scripting_ConversionFailed();
char * bytes = JS_GetStringBytes(string);
char* bytes = JS_GetStringBytes(string);
if (bytes == NULL)
throw PSERROR_Scripting_ConversionFailed();
@@ -290,8 +292,15 @@ std::string ScriptingHost::ValueToString(const jsval value)
CStrW ScriptingHost::ValueToUCString( const jsval value )
{
JSString* string = JS_ValueToString( m_Context, value );
return( CStrW( JS_GetStringChars( string ) ) );
JSString* string = JS_ValueToString(m_Context, value);
if (string == NULL)
throw PSERROR_Scripting_ConversionFailed();
jschar* chars = JS_GetStringChars(string);
if (chars == NULL)
throw PSERROR_Scripting_ConversionFailed();
return CStrW(chars);
}
jsval ScriptingHost::UCStringToValue(const utf16string &str)