Index: src/builtins.cc |
diff --git a/src/builtins.cc b/src/builtins.cc |
index 0825eb1c86e8ebe05ead114eed241c1bb1482e99..2df9503302fef67f2618f5269e3278b86f1497a7 100644 |
--- a/src/builtins.cc |
+++ b/src/builtins.cc |
@@ -2225,7 +2225,11 @@ BUILTIN(DateConstructor) { |
char buffer[128]; |
Vector<char> str(buffer, arraysize(buffer)); |
ToDateString(time_val, str, isolate->date_cache()); |
- return *isolate->factory()->NewStringFromAsciiChecked(str.start()); |
+ Handle<String> result; |
+ ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
+ isolate, result, |
+ isolate->factory()->NewStringFromUtf8(CStrVector(buffer))); |
+ return *result; |
} |
@@ -2805,7 +2809,11 @@ BUILTIN(DatePrototypeToDateString) { |
char buffer[128]; |
Vector<char> str(buffer, arraysize(buffer)); |
ToDateString(date->value()->Number(), str, isolate->date_cache(), kDateOnly); |
- return *isolate->factory()->NewStringFromAsciiChecked(str.start()); |
+ Handle<String> result; |
+ ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
+ isolate, result, |
+ isolate->factory()->NewStringFromUtf8(CStrVector(buffer))); |
+ return *result; |
} |
@@ -2845,7 +2853,11 @@ BUILTIN(DatePrototypeToString) { |
char buffer[128]; |
Vector<char> str(buffer, arraysize(buffer)); |
ToDateString(date->value()->Number(), str, isolate->date_cache()); |
- return *isolate->factory()->NewStringFromAsciiChecked(str.start()); |
+ Handle<String> result; |
+ ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
+ isolate, result, |
+ isolate->factory()->NewStringFromUtf8(CStrVector(buffer))); |
+ return *result; |
} |
@@ -2856,7 +2868,11 @@ BUILTIN(DatePrototypeToTimeString) { |
char buffer[128]; |
Vector<char> str(buffer, arraysize(buffer)); |
ToDateString(date->value()->Number(), str, isolate->date_cache(), kTimeOnly); |
- return *isolate->factory()->NewStringFromAsciiChecked(str.start()); |
+ Handle<String> result; |
+ ASSIGN_RETURN_FAILURE_ON_EXCEPTION( |
+ isolate, result, |
+ isolate->factory()->NewStringFromUtf8(CStrVector(buffer))); |
+ return *result; |
} |