Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(164)

Unified Diff: third_party/WebKit/Source/platform/v8_inspector/V8ValueCopier.cpp

Issue 2269843002: [DevTools] Improve ConsoleAPI functions string description (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: replaced ->Set( in v8_inspector Created 4 years, 4 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: third_party/WebKit/Source/platform/v8_inspector/V8ValueCopier.cpp
diff --git a/third_party/WebKit/Source/platform/v8_inspector/V8ValueCopier.cpp b/third_party/WebKit/Source/platform/v8_inspector/V8ValueCopier.cpp
index 3347abeba5929aa7c15fa3c05afc4c3072a8232c..f9f16219f28667006d5c6af080f99857179b646b 100644
--- a/third_party/WebKit/Source/platform/v8_inspector/V8ValueCopier.cpp
+++ b/third_party/WebKit/Source/platform/v8_inspector/V8ValueCopier.cpp
@@ -40,7 +40,7 @@ public:
v8::Local<v8::Value> copied;
if (!copy(item, depth + 1).ToLocal(&copied))
return v8::MaybeLocal<v8::Value>();
- if (!result->Set(m_to, i, copied).FromMaybe(false))
+ if (!safeCreateDataProperty(m_to, result, i, copied).FromMaybe(false))
return v8::MaybeLocal<v8::Value>();
}
return result;
@@ -63,7 +63,7 @@ public:
v8::Local<v8::Value> copied;
if (!copy(property, depth + 1).ToLocal(&copied))
return v8::MaybeLocal<v8::Value>();
- if (!result->Set(m_to, name, copied).FromMaybe(false))
+ if (!safeCreateDataProperty(m_to, result, v8::Local<v8::String>::Cast(name), copied).FromMaybe(false))
return v8::MaybeLocal<v8::Value>();
}
return result;
@@ -87,4 +87,16 @@ v8::MaybeLocal<v8::Value> copyValueFromDebuggerContext(v8::Isolate* isolate, v8:
return copier.copy(value, 0);
}
+v8::Maybe<bool> safeCreateDataProperty(v8::Local<v8::Context> context, v8::Local<v8::Object> object, v8::Local<v8::Name> key, v8::Local<v8::Value> value)
+{
+ v8::Isolate::DisallowJavascriptExecutionScope throwJs(context->GetIsolate(), v8::Isolate::DisallowJavascriptExecutionScope::THROW_ON_FAILURE);
dgozman 2016/08/23 19:26:49 Let's try/catch this?
kozy 2016/08/23 19:33:46 Done.
+ return object->CreateDataProperty(context, key, value);
+}
+
+v8::Maybe<bool> safeCreateDataProperty(v8::Local<v8::Context> context, v8::Local<v8::Array> array, int index, v8::Local<v8::Value> value)
+{
+ v8::Isolate::DisallowJavascriptExecutionScope throwJs(context->GetIsolate(), v8::Isolate::DisallowJavascriptExecutionScope::THROW_ON_FAILURE);
+ return array->CreateDataProperty(context, index, value);
+}
+
} // namespace v8_inspector

Powered by Google App Engine
This is Rietveld 408576698