summaryrefslogtreecommitdiff
path: root/libdeno/binding.cc
diff options
context:
space:
mode:
authorRyan Dahl <ry@tinyclouds.org>2019-01-01 11:22:23 -0500
committerRyan Dahl <ry@tinyclouds.org>2019-01-03 09:45:40 -0500
commitcbb18a596a0696b65fcb116744ee86492421ec2b (patch)
tree87bae6a80da8e89c6ca532ca415b97b74b9ee7fa /libdeno/binding.cc
parentd2b85d4904a29fee7ac81e44b5cda124f9948928 (diff)
Properly internalize V8 strings.
Diffstat (limited to 'libdeno/binding.cc')
-rw-r--r--libdeno/binding.cc10
1 files changed, 2 insertions, 8 deletions
diff --git a/libdeno/binding.cc b/libdeno/binding.cc
index eb83d2363..9e93bfca8 100644
--- a/libdeno/binding.cc
+++ b/libdeno/binding.cc
@@ -66,12 +66,6 @@ const char* ToCString(const v8::String::Utf8Value& value) {
return *value ? *value : "<string conversion failed>";
}
-static inline v8::Local<v8::String> v8_str(const char* x) {
- return v8::String::NewFromUtf8(v8::Isolate::GetCurrent(), x,
- v8::NewStringType::kNormal)
- .ToLocalChecked();
-}
-
std::string EncodeExceptionAsJSON(v8::Local<v8::Context> context,
v8::Local<v8::Value> exception) {
auto* isolate = context->GetIsolate();
@@ -360,7 +354,7 @@ bool ExecuteV8StringSource(v8::Local<v8::Context> context,
v8::TryCatch try_catch(isolate);
- auto name = v8_str(js_filename);
+ auto name = v8_str(js_filename, true);
v8::ScriptOrigin origin(name);
@@ -388,7 +382,7 @@ bool Execute(v8::Local<v8::Context> context, const char* js_filename,
auto* isolate = context->GetIsolate();
v8::Isolate::Scope isolate_scope(isolate);
v8::HandleScope handle_scope(isolate);
- auto source = v8_str(js_source);
+ auto source = v8_str(js_source, true);
return ExecuteV8StringSource(context, js_filename, source);
}