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

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

Issue 2139543002: [DevTools] Report console API calls through Runtime. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: tests pass Created 4 years, 5 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 /* 1 /*
2 * Copyright (c) 2010-2011 Google Inc. All rights reserved. 2 * Copyright (c) 2010-2011 Google Inc. All rights reserved.
3 * 3 *
4 * Redistribution and use in source and binary forms, with or without 4 * Redistribution and use in source and binary forms, with or without
5 * modification, are permitted provided that the following conditions are 5 * modification, are permitted provided that the following conditions are
6 * met: 6 * met:
7 * 7 *
8 * * Redistributions of source code must retain the above copyright 8 * * Redistributions of source code must retain the above copyright
9 * notice, this list of conditions and the following disclaimer. 9 * notice, this list of conditions and the following disclaimer.
10 * * Redistributions in binary form must reproduce the above 10 * * Redistributions in binary form must reproduce the above
(...skipping 993 matching lines...) Expand 10 before | Expand all | Expand 10 after
1004 void V8DebuggerImpl::idleFinished() 1004 void V8DebuggerImpl::idleFinished()
1005 { 1005 {
1006 m_isolate->GetCpuProfiler()->SetIdle(false); 1006 m_isolate->GetCpuProfiler()->SetIdle(false);
1007 } 1007 }
1008 1008
1009 void V8DebuggerImpl::addConsoleMessage(int contextGroupId, MessageSource source, MessageLevel level, const String16& message, const String16& url, unsigned line Number, unsigned columnNumber, std::unique_ptr<V8StackTrace> stackTrace, int scr iptId, const String16& requestIdentifier, const String16& workerId) 1009 void V8DebuggerImpl::addConsoleMessage(int contextGroupId, MessageSource source, MessageLevel level, const String16& message, const String16& url, unsigned line Number, unsigned columnNumber, std::unique_ptr<V8StackTrace> stackTrace, int scr iptId, const String16& requestIdentifier, const String16& workerId)
1010 { 1010 {
1011 ensureConsoleMessageStorage(contextGroupId)->addMessage(V8ConsoleMessage::cr eateExternal(m_client->currentTimeMS(), source, level, message, url, lineNumber, columnNumber, std::move(stackTrace), scriptId, requestIdentifier, workerId)); 1011 ensureConsoleMessageStorage(contextGroupId)->addMessage(V8ConsoleMessage::cr eateExternal(m_client->currentTimeMS(), source, level, message, url, lineNumber, columnNumber, std::move(stackTrace), scriptId, requestIdentifier, workerId));
1012 } 1012 }
1013 1013
1014 void V8DebuggerImpl::logToConsole(v8::Local<v8::Context> context, const String16 & message, v8::Local<v8::Value> arg1, v8::Local<v8::Value> arg2) 1014 void V8DebuggerImpl::logToConsole(v8::Local<v8::Context> context, v8::Local<v8:: Value> arg1, v8::Local<v8::Value> arg2)
1015 { 1015 {
1016 int contextGroupId = getGroupId(context); 1016 int contextGroupId = getGroupId(context);
1017 InspectedContext* inspectedContext = getContext(contextGroupId, contextId(co ntext)); 1017 InspectedContext* inspectedContext = getContext(contextGroupId, contextId(co ntext));
1018 if (!inspectedContext) 1018 if (!inspectedContext)
1019 return; 1019 return;
1020 std::vector<v8::Local<v8::Value>> arguments; 1020 std::vector<v8::Local<v8::Value>> arguments;
1021 if (!arg1.IsEmpty()) 1021 if (!arg1.IsEmpty())
1022 arguments.push_back(arg1); 1022 arguments.push_back(arg1);
1023 if (!arg2.IsEmpty()) 1023 if (!arg2.IsEmpty())
1024 arguments.push_back(arg2); 1024 arguments.push_back(arg2);
1025 ensureConsoleMessageStorage(contextGroupId)->addMessage(V8ConsoleMessage::cr eateForConsoleAPI(m_client->currentTimeMS(), ConsoleAPIType::kLog, LogMessageLev el, message, arguments.size() ? &arguments : nullptr, captureStackTrace(false), inspectedContext)); 1025 ensureConsoleMessageStorage(contextGroupId)->addMessage(V8ConsoleMessage::cr eateForConsoleAPI(m_client->currentTimeMS(), ConsoleAPIType::kLog, arguments, ca ptureStackTrace(false), inspectedContext));
1026 } 1026 }
1027 1027
1028 void V8DebuggerImpl::exceptionThrown(int contextGroupId, const String16& errorMe ssage, const String16& url, unsigned lineNumber, unsigned columnNumber, std::uni que_ptr<V8StackTrace> stackTrace, int scriptId) 1028 void V8DebuggerImpl::exceptionThrown(int contextGroupId, const String16& errorMe ssage, const String16& url, unsigned lineNumber, unsigned columnNumber, std::uni que_ptr<V8StackTrace> stackTrace, int scriptId)
1029 { 1029 {
1030 m_client->messageAddedToConsole(contextGroupId, JSMessageSource, ErrorMessag eLevel, errorMessage, url, lineNumber, columnNumber, stackTrace.get());
1031 unsigned exceptionId = ++m_lastExceptionId; 1030 unsigned exceptionId = ++m_lastExceptionId;
1032 std::unique_ptr<V8ConsoleMessage> consoleMessage = V8ConsoleMessage::createF orException(m_client->currentTimeMS(), errorMessage, url, lineNumber, columnNumb er, std::move(stackTrace), scriptId, m_isolate, 0, v8::Local<v8::Value>(), excep tionId); 1031 std::unique_ptr<V8ConsoleMessage> consoleMessage = V8ConsoleMessage::createF orException(m_client->currentTimeMS(), errorMessage, url, lineNumber, columnNumb er, std::move(stackTrace), scriptId, m_isolate, 0, v8::Local<v8::Value>(), excep tionId);
1033 ensureConsoleMessageStorage(contextGroupId)->addMessage(std::move(consoleMes sage)); 1032 ensureConsoleMessageStorage(contextGroupId)->addMessage(std::move(consoleMes sage));
1034 } 1033 }
1035 1034
1036 unsigned V8DebuggerImpl::promiseRejected(v8::Local<v8::Context> context, const S tring16& errorMessage, v8::Local<v8::Value> exception, const String16& url, unsi gned lineNumber, unsigned columnNumber, std::unique_ptr<V8StackTrace> stackTrace , int scriptId) 1035 unsigned V8DebuggerImpl::promiseRejected(v8::Local<v8::Context> context, const S tring16& errorMessage, v8::Local<v8::Value> exception, const String16& url, unsi gned lineNumber, unsigned columnNumber, std::unique_ptr<V8StackTrace> stackTrace , int scriptId)
1037 { 1036 {
1038 int contextGroupId = getGroupId(context); 1037 int contextGroupId = getGroupId(context);
1039 if (!contextGroupId) 1038 if (!contextGroupId)
1040 return 0; 1039 return 0;
1041 1040
1042 const String16 defaultMessage = "Uncaught (in promise)"; 1041 const String16 defaultMessage = "Uncaught (in promise)";
pfeldman 2016/07/13 00:48:43 Why do you need it in both places?
dgozman 2016/07/13 21:08:07 Done.
1043 String16 message = errorMessage; 1042 String16 message = errorMessage;
1044 if (message.isEmpty()) 1043 if (message.isEmpty())
1045 message = defaultMessage; 1044 message = defaultMessage;
1046 else if (message.startWith("Uncaught ")) 1045 else if (message.startWith("Uncaught "))
1047 message = message.substring(0, 8) + " (in promise)" + message.substring( 8); 1046 message = message.substring(0, 8) + " (in promise)" + message.substring( 8);
1048 1047
1049 m_client->messageAddedToConsole(contextGroupId, JSMessageSource, ErrorMessag eLevel, message, url, lineNumber, columnNumber, stackTrace.get());
1050 unsigned exceptionId = ++m_lastExceptionId; 1048 unsigned exceptionId = ++m_lastExceptionId;
1051 std::unique_ptr<V8ConsoleMessage> consoleMessage = V8ConsoleMessage::createF orException(m_client->currentTimeMS(), message, url, lineNumber, columnNumber, s td::move(stackTrace), scriptId, m_isolate, contextId(context), exception, except ionId); 1049 std::unique_ptr<V8ConsoleMessage> consoleMessage = V8ConsoleMessage::createF orException(m_client->currentTimeMS(), message, url, lineNumber, columnNumber, s td::move(stackTrace), scriptId, m_isolate, contextId(context), exception, except ionId);
1052 ensureConsoleMessageStorage(contextGroupId)->addMessage(std::move(consoleMes sage)); 1050 ensureConsoleMessageStorage(contextGroupId)->addMessage(std::move(consoleMes sage));
1053 return exceptionId; 1051 return exceptionId;
1054 } 1052 }
1055 1053
1056 void V8DebuggerImpl::promiseRejectionRevoked(v8::Local<v8::Context> context, uns igned promiseRejectionId) 1054 void V8DebuggerImpl::promiseRejectionRevoked(v8::Local<v8::Context> context, uns igned promiseRejectionId)
1057 { 1055 {
1058 int contextGroupId = getGroupId(context); 1056 int contextGroupId = getGroupId(context);
1059 if (!contextGroupId) 1057 if (!contextGroupId)
(...skipping 59 matching lines...) Expand 10 before | Expand all | Expand 10 after
1119 1117
1120 V8InspectorSessionImpl* V8DebuggerImpl::sessionForContextGroup(int contextGroupI d) 1118 V8InspectorSessionImpl* V8DebuggerImpl::sessionForContextGroup(int contextGroupI d)
1121 { 1119 {
1122 if (!contextGroupId) 1120 if (!contextGroupId)
1123 return nullptr; 1121 return nullptr;
1124 SessionMap::iterator iter = m_sessions.find(contextGroupId); 1122 SessionMap::iterator iter = m_sessions.find(contextGroupId);
1125 return iter == m_sessions.end() ? nullptr : iter->second; 1123 return iter == m_sessions.end() ? nullptr : iter->second;
1126 } 1124 }
1127 1125
1128 } // namespace blink 1126 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698