Index: third_party/WebKit/Source/core/loader/DocumentThreadableLoader.cpp |
diff --git a/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.cpp b/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.cpp |
index 900edce3865cea7e831e3c73c118e28d94873ff5..a22525327dccedc80a0e4cc8b43220a0ea4667db 100644 |
--- a/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.cpp |
+++ b/third_party/WebKit/Source/core/loader/DocumentThreadableLoader.cpp |
@@ -570,6 +570,11 @@ void DocumentThreadableLoader::handlePreflightResponse(const ResourceResponse& r |
void DocumentThreadableLoader::reportResponseReceived(unsigned long identifier, const ResourceResponse& response) |
{ |
LocalFrame* frame = document().frame(); |
+ // We are seeing crashes caused by nullptr (crbug.com/578849). But the frame |
+ // must be set here. TODO(horo): Find the root cause of the unset frame. |
+ ASSERT(frame); |
+ if (!frame) |
+ return; |
DocumentLoader* loader = frame->loader().documentLoader(); |
TRACE_EVENT_INSTANT1("devtools.timeline", "ResourceReceiveResponse", TRACE_EVENT_SCOPE_THREAD, "data", InspectorReceiveResponseEvent::data(identifier, frame, response)); |
InspectorInstrumentation::didReceiveResourceResponse(frame, identifier, loader, response, resource() ? resource()->loader() : 0); |