| Index: extensions/renderer/guest_view/mime_handler_view/mime_handler_view_container.cc
|
| diff --git a/extensions/renderer/guest_view/mime_handler_view/mime_handler_view_container.cc b/extensions/renderer/guest_view/mime_handler_view/mime_handler_view_container.cc
|
| index 22d508220bde816bb7197ba39c9628df7bdce115..527fd2d8c7f1e8e442d3f4d075a0de0acc1e699f 100644
|
| --- a/extensions/renderer/guest_view/mime_handler_view/mime_handler_view_container.cc
|
| +++ b/extensions/renderer/guest_view/mime_handler_view/mime_handler_view_container.cc
|
| @@ -117,8 +117,10 @@ MimeHandlerViewContainer::MimeHandlerViewContainer(
|
| }
|
|
|
| MimeHandlerViewContainer::~MimeHandlerViewContainer() {
|
| - if (loader_)
|
| + if (loader_) {
|
| + DCHECK(is_embedded_);
|
| loader_->cancel();
|
| + }
|
|
|
| if (render_frame()) {
|
| g_mime_handler_view_container_map.Get()[render_frame()].erase(this);
|
| @@ -139,7 +141,7 @@ MimeHandlerViewContainer::FromRenderFrame(content::RenderFrame* render_frame) {
|
| }
|
|
|
| void MimeHandlerViewContainer::OnReady() {
|
| - if (!render_frame())
|
| + if (!render_frame() || !is_embedded_)
|
| return;
|
|
|
| blink::WebFrame* frame = render_frame()->GetWebFrame();
|
| @@ -325,7 +327,10 @@ void MimeHandlerViewContainer::OnMimeHandlerViewGuestOnLoadCompleted(
|
|
|
| void MimeHandlerViewContainer::CreateMimeHandlerViewGuest() {
|
| // The loader has completed loading |view_id_| so we can dispose it.
|
| - loader_.reset();
|
| + if (loader_) {
|
| + DCHECK(is_embedded_);
|
| + loader_.reset();
|
| + }
|
|
|
| DCHECK_NE(element_instance_id(), guest_view::kInstanceIDNone);
|
|
|
|
|