Index: components/guest_view/browser/guest_view_manager.cc |
diff --git a/components/guest_view/browser/guest_view_manager.cc b/components/guest_view/browser/guest_view_manager.cc |
index 1734c762657e9ae169d5d621fc0c84cd8fbe7d26..315ea635bfd49e4d1ff029709ff9c39e657d48b8 100644 |
--- a/components/guest_view/browser/guest_view_manager.cc |
+++ b/components/guest_view/browser/guest_view_manager.cc |
@@ -463,8 +463,16 @@ bool GuestViewManager::CanEmbedderAccessInstanceID( |
if (!guest_view) |
return false; |
+ if (guest_view->CanBeEmbeddedInsideCrossProcessFrames()) { |
+ // MimeHandlerViewGuests (PDF) may be embedded in a cross-process frame. |
+ return embedder_render_process_id == |
+ guest_view->GetOwnerSiteInstance()->GetProcess()->GetID(); |
+ } |
+ |
+ // Other than MimeHandlerViewGuest, all other guest types are only permitted |
+ // to run in the main frame. |
return embedder_render_process_id == |
- guest_view->owner_web_contents()->GetRenderProcessHost()->GetID(); |
+ guest_view->owner_web_contents()->GetRenderProcessHost()->GetID(); |
} |
GuestViewManager::ElementInstanceKey::ElementInstanceKey() |