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

Side by Side Diff: third_party/WebKit/Source/platform/v8_inspector/V8ConsoleMessage.cpp

Issue 2249743006: [DevTools] Fill ExceptionDetails with more details, unify usage across protocol. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: browser test 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 unified diff | Download patch
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "platform/v8_inspector/V8ConsoleMessage.h" 5 #include "platform/v8_inspector/V8ConsoleMessage.h"
6 6
7 #include "platform/v8_inspector/InspectedContext.h" 7 #include "platform/v8_inspector/InspectedContext.h"
8 #include "platform/v8_inspector/V8ConsoleAgentImpl.h" 8 #include "platform/v8_inspector/V8ConsoleAgentImpl.h"
9 #include "platform/v8_inspector/V8InspectorImpl.h" 9 #include "platform/v8_inspector/V8InspectorImpl.h"
10 #include "platform/v8_inspector/V8InspectorSessionImpl.h" 10 #include "platform/v8_inspector/V8InspectorSessionImpl.h"
(...skipping 244 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 args->addItem(std::move(wrapped)); 255 args->addItem(std::move(wrapped));
256 } 256 }
257 } 257 }
258 return args; 258 return args;
259 } 259 }
260 260
261 void V8ConsoleMessage::reportToFrontend(protocol::Runtime::Frontend* frontend, V 8InspectorSessionImpl* session, bool generatePreview) const 261 void V8ConsoleMessage::reportToFrontend(protocol::Runtime::Frontend* frontend, V 8InspectorSessionImpl* session, bool generatePreview) const
262 { 262 {
263 if (m_origin == V8MessageOrigin::kException) { 263 if (m_origin == V8MessageOrigin::kException) {
264 std::unique_ptr<protocol::Runtime::RemoteObject> exception = wrapExcepti on(session, generatePreview); 264 std::unique_ptr<protocol::Runtime::RemoteObject> exception = wrapExcepti on(session, generatePreview);
265 // TODO(dgozman): unify with InjectedScript::createExceptionDetails. 265 std::unique_ptr<protocol::Runtime::ExceptionDetails> exceptionDetails = protocol::Runtime::ExceptionDetails::create()
266 std::unique_ptr<protocol::Runtime::ExceptionDetails> details = protocol: :Runtime::ExceptionDetails::create() 266 .setExceptionId(m_exceptionId)
267 .setText(exception ? m_message : m_detailedMessage) 267 .setText(exception ? m_message : m_detailedMessage)
268 .setLineNumber(m_lineNumber ? m_lineNumber - 1 : 0) 268 .setLineNumber(m_lineNumber ? m_lineNumber - 1 : 0)
269 .setColumnNumber(m_columnNumber ? m_columnNumber - 1 : 0) 269 .setColumnNumber(m_columnNumber ? m_columnNumber - 1 : 0)
270 .setScriptId(m_scriptId ? String16::fromInteger(m_scriptId) : String 16())
271 .build(); 270 .build();
271 if (m_scriptId)
272 exceptionDetails->setScriptId(String16::fromInteger(m_scriptId));
272 if (!m_url.isEmpty()) 273 if (!m_url.isEmpty())
273 details->setUrl(m_url); 274 exceptionDetails->setUrl(m_url);
274 if (m_stackTrace) 275 if (m_stackTrace)
275 details->setStackTrace(m_stackTrace->buildInspectorObjectImpl()); 276 exceptionDetails->setStackTrace(m_stackTrace->buildInspectorObjectIm pl());
276 277 if (m_contextId)
278 exceptionDetails->setExecutionContextId(m_contextId);
277 if (exception) 279 if (exception)
278 frontend->exceptionThrown(m_exceptionId, m_timestamp, std::move(deta ils), std::move(exception), m_contextId); 280 exceptionDetails->setException(std::move(exception));
279 else 281 frontend->exceptionThrown(m_timestamp, std::move(exceptionDetails));
280 frontend->exceptionThrown(m_exceptionId, m_timestamp, std::move(deta ils));
281 return; 282 return;
282 } 283 }
283 if (m_origin == V8MessageOrigin::kRevokedException) { 284 if (m_origin == V8MessageOrigin::kRevokedException) {
284 frontend->exceptionRevoked(m_message, m_revokedExceptionId); 285 frontend->exceptionRevoked(m_message, m_revokedExceptionId);
285 return; 286 return;
286 } 287 }
287 if (m_origin == V8MessageOrigin::kConsole) { 288 if (m_origin == V8MessageOrigin::kConsole) {
288 std::unique_ptr<protocol::Array<protocol::Runtime::RemoteObject>> argume nts = wrapArguments(session, generatePreview); 289 std::unique_ptr<protocol::Array<protocol::Runtime::RemoteObject>> argume nts = wrapArguments(session, generatePreview);
289 if (!arguments) { 290 if (!arguments) {
290 arguments = protocol::Array<protocol::Runtime::RemoteObject>::create (); 291 arguments = protocol::Array<protocol::Runtime::RemoteObject>::create ();
(...skipping 142 matching lines...) Expand 10 before | Expand all | Expand 10 after
433 session->releaseObjectGroup("console"); 434 session->releaseObjectGroup("console");
434 } 435 }
435 436
436 void V8ConsoleMessageStorage::contextDestroyed(int contextId) 437 void V8ConsoleMessageStorage::contextDestroyed(int contextId)
437 { 438 {
438 for (size_t i = 0; i < m_messages.size(); ++i) 439 for (size_t i = 0; i < m_messages.size(); ++i)
439 m_messages[i]->contextDestroyed(contextId); 440 m_messages[i]->contextDestroyed(contextId);
440 } 441 }
441 442
442 } // namespace v8_inspector 443 } // namespace v8_inspector
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698