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

Unified Diff: Source/core/frame/ConsoleBase.cpp

Issue 472023002: [DevTools] ConsoleAPI messages pass through frame console (Closed) Base URL: https://chromium.googlesource.com/chromium/blink.git@master
Patch Set: PassRefPtr<ConsoleMessage> -> PassRefPtrWillBeRawPtr<ConsoleMessage> Created 6 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
« no previous file with comments | « Source/core/frame/ConsoleBase.h ('k') | Source/core/frame/FrameConsole.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: Source/core/frame/ConsoleBase.cpp
diff --git a/Source/core/frame/ConsoleBase.cpp b/Source/core/frame/ConsoleBase.cpp
index 005074cfd4a5255c3a32d01d892495a96bd6f637..ac671e5bc1e5d908c973254f5bf2f50b77f74c31 100644
--- a/Source/core/frame/ConsoleBase.cpp
+++ b/Source/core/frame/ConsoleBase.cpp
@@ -85,7 +85,7 @@ void ConsoleBase::table(ScriptState* scriptState, PassRefPtrWillBeRawPtr<ScriptA
void ConsoleBase::clear(ScriptState* scriptState, PassRefPtrWillBeRawPtr<ScriptArguments> arguments)
{
- InspectorInstrumentation::addConsoleAPIMessageToConsole(context(), ClearMessageType, LogMessageLevel, String(), scriptState, arguments);
+ internalAddMessage(ClearMessageType, LogMessageLevel, scriptState, arguments, true);
}
void ConsoleBase::trace(ScriptState* scriptState, PassRefPtrWillBeRawPtr<ScriptArguments> arguments)
@@ -152,36 +152,38 @@ void ConsoleBase::timelineEnd(ScriptState* scriptState, const String& title)
void ConsoleBase::group(ScriptState* scriptState, PassRefPtrWillBeRawPtr<ScriptArguments> arguments)
{
- InspectorInstrumentation::addConsoleAPIMessageToConsole(context(), StartGroupMessageType, LogMessageLevel, String(), scriptState, arguments);
+ internalAddMessage(StartGroupMessageType, LogMessageLevel, scriptState, arguments, true);
}
void ConsoleBase::groupCollapsed(ScriptState* scriptState, PassRefPtrWillBeRawPtr<ScriptArguments> arguments)
{
- InspectorInstrumentation::addConsoleAPIMessageToConsole(context(), StartGroupCollapsedMessageType, LogMessageLevel, String(), scriptState, arguments);
+ internalAddMessage(StartGroupCollapsedMessageType, LogMessageLevel, scriptState, arguments, true);
}
void ConsoleBase::groupEnd()
{
- InspectorInstrumentation::addConsoleAPIMessageToConsole(context(), EndGroupMessageType, LogMessageLevel, String(), nullptr, nullptr);
+ internalAddMessage(EndGroupMessageType, LogMessageLevel, nullptr, nullptr, true);
}
void ConsoleBase::internalAddMessage(MessageType type, MessageLevel level, ScriptState* scriptState, PassRefPtrWillBeRawPtr<ScriptArguments> scriptArguments, bool acceptNoArguments, bool printTrace)
{
- if (!context())
- return;
-
RefPtrWillBeRawPtr<ScriptArguments> arguments = scriptArguments;
- if (!acceptNoArguments && !arguments->argumentCount())
+ if (!acceptNoArguments && (!arguments || !arguments->argumentCount()))
return;
+ String message;
+ bool gotStringMessage = arguments ? arguments->getFirstArgumentAsString(message) : false;
+
+ RefPtr<ConsoleMessage> consoleMessage = ConsoleMessage::create(ConsoleAPIMessageSource, level, gotStringMessage? message : String());
+ consoleMessage->setType(type);
+ consoleMessage->setScriptState(scriptState);
+ consoleMessage->setScriptArguments(arguments);
+
size_t stackSize = printTrace ? ScriptCallStack::maxCallStackSizeToCapture : 1;
RefPtrWillBeRawPtr<ScriptCallStack> callStack(createScriptCallStackForConsole(stackSize));
+ consoleMessage->setCallStack(callStack);
- String message;
- bool gotStringMessage = arguments->getFirstArgumentAsString(message);
- InspectorInstrumentation::addConsoleAPIMessageToConsole(context(), type, level, message, scriptState, arguments);
- if (gotStringMessage)
- reportMessageToClient(level, message, callStack);
+ reportMessageToConsole(consoleMessage.release());
}
} // namespace blink
« no previous file with comments | « Source/core/frame/ConsoleBase.h ('k') | Source/core/frame/FrameConsole.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698