| Index: extensions/renderer/guest_view/guest_view_internal_custom_bindings.cc | 
| diff --git a/extensions/renderer/guest_view/guest_view_internal_custom_bindings.cc b/extensions/renderer/guest_view/guest_view_internal_custom_bindings.cc | 
| index 5a240f816a61d4918b74a06ce2caef81ee6d2b2b..738f00c799b50a95f5ee75f8dda9b0e1155834b9 100644 | 
| --- a/extensions/renderer/guest_view/guest_view_internal_custom_bindings.cc | 
| +++ b/extensions/renderer/guest_view/guest_view_internal_custom_bindings.cc | 
| @@ -47,6 +47,9 @@ GuestViewInternalCustomBindings::GuestViewInternalCustomBindings( | 
| RouteFunction("DetachGuest", | 
| base::Bind(&GuestViewInternalCustomBindings::DetachGuest, | 
| base::Unretained(this))); | 
| +  RouteFunction("DestroyContainer", | 
| +                base::Bind(&GuestViewInternalCustomBindings::DestroyContainer, | 
| +                           base::Unretained(this))); | 
| RouteFunction("GetContentWindow", | 
| base::Bind(&GuestViewInternalCustomBindings::GetContentWindow, | 
| base::Unretained(this))); | 
| @@ -174,6 +177,30 @@ void GuestViewInternalCustomBindings::DetachGuest( | 
| args.GetReturnValue().Set(v8::Boolean::New(context()->isolate(), true)); | 
| } | 
|  | 
| +void GuestViewInternalCustomBindings::DestroyContainer( | 
| +    const v8::FunctionCallbackInfo<v8::Value>& args) { | 
| +  args.GetReturnValue().SetNull(); | 
| + | 
| +  if (args.Length() != 1) | 
| +    return; | 
| + | 
| +  // Element Instance ID. | 
| +  if (!args[0]->IsInt32()) | 
| +    return; | 
| + | 
| +  int element_instance_id = args[0]->Int32Value(); | 
| +  auto* guest_view_container = | 
| +      guest_view::GuestViewContainer::FromID(element_instance_id); | 
| +  if (!guest_view_container) | 
| +    return; | 
| + | 
| +  // Note: |guest_view_container| is deleted. | 
| +  // GuestViewContainer::DidDestroyElement() currently also destroys | 
| +  // a GuestViewContainer. That won't be necessary once GuestViewContainer | 
| +  // always runs w/o plugin. | 
| +  guest_view_container->Destroy(); | 
| +} | 
| + | 
| void GuestViewInternalCustomBindings::GetContentWindow( | 
| const v8::FunctionCallbackInfo<v8::Value>& args) { | 
| // Default to returning null. | 
|  |