Index: content/browser/devtools/protocol/devtools_protocol_browsertest.cc |
diff --git a/content/browser/devtools/protocol/devtools_protocol_browsertest.cc b/content/browser/devtools/protocol/devtools_protocol_browsertest.cc |
index 0e4199698407a79bc0e067158b70643ce8b538da..85f66ee36c702dd4bfe40f7bc153400dc78fb149 100644 |
--- a/content/browser/devtools/protocol/devtools_protocol_browsertest.cc |
+++ b/content/browser/devtools/protocol/devtools_protocol_browsertest.cc |
@@ -959,6 +959,25 @@ IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, CrossSiteNoDetach) { |
EXPECT_EQ(0u, notifications_.size()); |
} |
+IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, CrossSiteCrash) { |
+ set_agent_host_can_close(); |
+ host_resolver()->AddRule("*", "127.0.0.1"); |
+ content::SetupCrossSiteRedirector(embedded_test_server()); |
+ ASSERT_TRUE(embedded_test_server()->Start()); |
+ |
+ GURL test_url1 = |
+ embedded_test_server()->GetURL("A.com", "/devtools/navigation.html"); |
+ NavigateToURLBlockUntilNavigationsComplete(shell(), test_url1, 1); |
+ Attach(); |
+ CrashTab(shell()->web_contents()); |
+ |
+ GURL test_url2 = |
+ embedded_test_server()->GetURL("B.com", "/devtools/navigation.html"); |
+ NavigateToURLBlockUntilNavigationsComplete(shell(), test_url2, 1); |
+ |
+ // Should not crash at this point. |
+} |
+ |
IN_PROC_BROWSER_TEST_F(DevToolsProtocolTest, ReconnectPreservesState) { |
ASSERT_TRUE(embedded_test_server()->Start()); |
GURL test_url = embedded_test_server()->GetURL("/devtools/navigation.html"); |