Chromium Code Reviews| 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())); |
|
esprehn
2016/09/21 00:14:58
size_t ? unsigned long long is very unusual
carlosk
2016/09/21 16:47:20
Yes, this is unusual but this solves a compilation
|
| // 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(); |