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

Unified Diff: third_party/WebKit/Source/web/WebFrameSerializer.cpp

Issue 2344153003: Adds tracing to MHTML generation call chain. (Closed)
Patch Set: Address code review comments Created 4 years, 3 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 | « third_party/WebKit/Source/core/frame/FrameSerializer.cpp ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: third_party/WebKit/Source/web/WebFrameSerializer.cpp
diff --git a/third_party/WebKit/Source/web/WebFrameSerializer.cpp b/third_party/WebKit/Source/web/WebFrameSerializer.cpp
index be64cd48aff347065527f5816d68e6191e355f14..fb8ffc3fb4aa4e50b2d2cbfce43d8a3aafb33341 100644
--- a/third_party/WebKit/Source/web/WebFrameSerializer.cpp
+++ b/third_party/WebKit/Source/web/WebFrameSerializer.cpp
@@ -45,6 +45,7 @@
#include "core/loader/DocumentLoader.h"
#include "platform/SerializedResource.h"
#include "platform/SharedBuffer.h"
+#include "platform/TraceEvent.h"
#include "platform/mhtml/MHTMLArchive.h"
#include "platform/mhtml/MHTMLParser.h"
#include "platform/network/ResourceRequest.h"
@@ -180,6 +181,7 @@ bool frameShouldBeSerializedAsMHTML(WebLocalFrame* frame, WebFrameSerializerCach
WebData WebFrameSerializer::generateMHTMLHeader(
const WebString& boundary, WebLocalFrame* frame, MHTMLPartsGenerationDelegate* delegate)
{
+ TRACE_EVENT0("page-serialization", "WebFrameSerializer::generateMHTMLHeader");
DCHECK(frame);
DCHECK(delegate);
@@ -201,6 +203,7 @@ WebData WebFrameSerializer::generateMHTMLHeader(
WebData WebFrameSerializer::generateMHTMLParts(
const WebString& boundary, WebLocalFrame* webFrame, MHTMLPartsGenerationDelegate* webDelegate)
{
+ TRACE_EVENT0("page-serialization", "WebFrameSerializer::generateMHTMLParts");
DCHECK(webFrame);
DCHECK(webDelegate);
@@ -215,9 +218,12 @@ WebData WebFrameSerializer::generateMHTMLParts(
// Serialize.
Vector<SerializedResource> resources;
+ TRACE_EVENT_BEGIN0("page-serialization", "WebFrameSerializer::generateMHTMLParts serializing");
MHTMLFrameSerializerDelegate coreDelegate(*webDelegate);
FrameSerializer serializer(resources, coreDelegate);
serializer.serializeFrame(*frame);
+ TRACE_EVENT_END1("page-serialization", "WebFrameSerializer::generateMHTMLParts serializing",
+ "resource count", static_cast<unsigned long long>(resources.size()));
// Get Content-ID for the frame being serialized.
String frameContentID = webDelegate->getContentID(webFrame);
@@ -226,6 +232,7 @@ WebData WebFrameSerializer::generateMHTMLParts(
RefPtr<SharedBuffer> output = SharedBuffer::create();
bool isFirstResource = true;
for (const SerializedResource& resource : resources) {
+ TRACE_EVENT0("page-serialization", "WebFrameSerializer::generateMHTMLParts encoding");
// Frame is the 1st resource (see FrameSerializer::serializeFrame doc
// comment). Frames get a Content-ID header.
String contentID = isFirstResource ? frameContentID : String();
@@ -240,6 +247,7 @@ WebData WebFrameSerializer::generateMHTMLParts(
WebData WebFrameSerializer::generateMHTMLFooter(const WebString& boundary)
{
+ TRACE_EVENT0("page-serialization", "WebFrameSerializer::generateMHTMLFooter");
RefPtr<SharedBuffer> buffer = SharedBuffer::create();
MHTMLArchive::generateMHTMLFooter(boundary, *buffer);
return buffer.release();
« no previous file with comments | « third_party/WebKit/Source/core/frame/FrameSerializer.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698