Index: third_party/WebKit/Source/core/inspector/ThreadDebugger.cpp |
diff --git a/third_party/WebKit/Source/core/inspector/ThreadDebugger.cpp b/third_party/WebKit/Source/core/inspector/ThreadDebugger.cpp |
index e55a96971742b23ec05131a331d36a4e5a9ef13c..368ad877b12ca910ca719e71324d22f8e10b270e 100644 |
--- a/third_party/WebKit/Source/core/inspector/ThreadDebugger.cpp |
+++ b/third_party/WebKit/Source/core/inspector/ThreadDebugger.cpp |
@@ -20,6 +20,7 @@ |
#include "core/inspector/ConsoleMessage.h" |
#include "core/inspector/InspectorDOMDebuggerAgent.h" |
#include "core/inspector/InspectorTraceEvents.h" |
+#include "core/inspector/V8InspectorString.h" |
#include "platform/ScriptForbiddenScope.h" |
#include "wtf/CurrentTime.h" |
#include "wtf/PtrUtil.h" |
@@ -85,7 +86,7 @@ void ThreadDebugger::idleFinished(v8::Isolate* isolate) |
void ThreadDebugger::asyncTaskScheduled(const String& operationName, void* task, bool recurring) |
{ |
- m_v8Inspector->asyncTaskScheduled(operationName, task, recurring); |
+ m_v8Inspector->asyncTaskScheduled(toV8InspectorStringView(operationName), task, recurring); |
} |
void ThreadDebugger::asyncTaskCanceled(void* task) |
@@ -118,13 +119,14 @@ unsigned ThreadDebugger::promiseRejected(v8::Local<v8::Context> context, const S |
message = message.substring(0, 8) + " (in promise)" + message.substring(8); |
reportConsoleMessage(toExecutionContext(context), JSMessageSource, ErrorMessageLevel, message, location.get()); |
- return v8Inspector()->exceptionThrown(context, defaultMessage, exception, message, location->url(), location->lineNumber(), location->columnNumber(), location->takeStackTrace(), location->scriptId()); |
+ String url = location->url(); |
+ return v8Inspector()->exceptionThrown(context, toV8InspectorStringView(defaultMessage), exception, toV8InspectorStringView(message), toV8InspectorStringView(url), location->lineNumber(), location->columnNumber(), location->takeStackTrace(), location->scriptId()); |
} |
void ThreadDebugger::promiseRejectionRevoked(v8::Local<v8::Context> context, unsigned promiseRejectionId) |
{ |
const String message = "Handler added to rejected promise"; |
- v8Inspector()->exceptionRevoked(context, promiseRejectionId, message); |
+ v8Inspector()->exceptionRevoked(context, promiseRejectionId, toV8InspectorStringView(message)); |
} |
void ThreadDebugger::beginUserGesture() |
@@ -137,19 +139,22 @@ void ThreadDebugger::endUserGesture() |
m_userGestureIndicator.reset(); |
} |
-String16 ThreadDebugger::valueSubtype(v8::Local<v8::Value> value) |
+std::unique_ptr<v8_inspector::StringBuffer> ThreadDebugger::valueSubtype(v8::Local<v8::Value> value) |
{ |
+ static const char kNode[] = "node"; |
+ static const char kArray[] = "array"; |
+ static const char kError[] = "error"; |
if (V8Node::hasInstance(value, m_isolate)) |
- return "node"; |
+ return toV8InspectorStringBuffer(kNode); |
if (V8NodeList::hasInstance(value, m_isolate) |
|| V8DOMTokenList::hasInstance(value, m_isolate) |
|| V8HTMLCollection::hasInstance(value, m_isolate) |
|| V8HTMLAllCollection::hasInstance(value, m_isolate)) { |
- return "array"; |
+ return toV8InspectorStringBuffer(kArray); |
} |
if (V8DOMException::hasInstance(value, m_isolate)) |
- return "error"; |
- return String(); |
+ return toV8InspectorStringBuffer(kError); |
+ return nullptr; |
} |
bool ThreadDebugger::formatAccessorsAsProperties(v8::Local<v8::Value> value) |
@@ -341,20 +346,23 @@ void ThreadDebugger::getEventListenersCallback(const v8::FunctionCallbackInfo<v8 |
info.GetReturnValue().Set(result); |
} |
-void ThreadDebugger::consoleTime(const String16& title) |
+void ThreadDebugger::consoleTime(const v8_inspector::StringView& title) |
{ |
- TRACE_EVENT_COPY_ASYNC_BEGIN0("blink.console", String(title).utf8().data(), this); |
+ // TODO(dgozman): we can save on a copy here if trace macro would take a pointer with length. |
+ TRACE_EVENT_COPY_ASYNC_BEGIN0("blink.console", toCoreString(title).utf8().data(), this); |
} |
-void ThreadDebugger::consoleTimeEnd(const String16& title) |
+void ThreadDebugger::consoleTimeEnd(const v8_inspector::StringView& title) |
{ |
- TRACE_EVENT_COPY_ASYNC_END0("blink.console", String(title).utf8().data(), this); |
+ // TODO(dgozman): we can save on a copy here if trace macro would take a pointer with length. |
+ TRACE_EVENT_COPY_ASYNC_END0("blink.console", toCoreString(title).utf8().data(), this); |
} |
-void ThreadDebugger::consoleTimeStamp(const String16& title) |
+void ThreadDebugger::consoleTimeStamp(const v8_inspector::StringView& title) |
{ |
v8::Isolate* isolate = m_isolate; |
- TRACE_EVENT_INSTANT1("devtools.timeline", "TimeStamp", TRACE_EVENT_SCOPE_THREAD, "data", InspectorTimeStampEvent::data(currentExecutionContext(isolate), title)); |
+ // TODO(dgozman): we can save on a copy here if TracedValue would take a StringView. |
+ TRACE_EVENT_INSTANT1("devtools.timeline", "TimeStamp", TRACE_EVENT_SCOPE_THREAD, "data", InspectorTimeStampEvent::data(currentExecutionContext(isolate), toCoreString(title))); |
} |
void ThreadDebugger::startRepeatingTimer(double interval, V8InspectorClient::TimerCallback callback, void* data) |