diff --git a/shell/browser/api/electron_api_web_contents.cc b/shell/browser/api/electron_api_web_contents.cc index 3d5a971a91a84..e77fda17ccc9f 100644 --- a/shell/browser/api/electron_api_web_contents.cc +++ b/shell/browser/api/electron_api_web_contents.cc @@ -1697,9 +1697,14 @@ void WebContents::MessageTo(int32_t web_contents_id, gin::Handle web_frame_main = WebFrameMain::From(JavascriptEnvironment::GetIsolate(), frame); - int32_t sender_id = ID(); - web_frame_main->GetRendererApi()->Message(false /* internal */, channel, - std::move(arguments), sender_id); + if (!web_frame_main->CheckRenderFrame()) + return; + + if () { + int32_t sender_id = ID(); + web_frame_main->GetRendererApi()->Message( + false /* internal */, channel, std::move(arguments), sender_id); + } } }