Title: [140717] trunk/Tools
- Revision
- 140717
- Author
- a...@chromium.org
- Date
- 2013-01-24 13:37:51 -0800 (Thu, 24 Jan 2013)
Log Message
Unreviewed, rolling out r140703.
http://trac.webkit.org/changeset/140703
https://bugs.webkit.org/show_bug.cgi?id=107556
r140561 was not the reason for the Android breakage
* DumpRenderTree/chromium/TestShell.cpp:
(TestShell::~TestShell):
(TestShell::closeWindow):
* DumpRenderTree/chromium/WebViewHost.cpp:
(WebViewHost::WebViewHost):
(WebViewHost::~WebViewHost):
(WebViewHost::shutdown):
* DumpRenderTree/chromium/WebViewHost.h:
(WebViewHost):
Modified Paths
Diff
Modified: trunk/Tools/ChangeLog (140716 => 140717)
--- trunk/Tools/ChangeLog 2013-01-24 21:31:00 UTC (rev 140716)
+++ trunk/Tools/ChangeLog 2013-01-24 21:37:51 UTC (rev 140717)
@@ -1,3 +1,21 @@
+2013-01-24 Erik Arvidsson <a...@chromium.org>
+
+ Unreviewed, rolling out r140703.
+ http://trac.webkit.org/changeset/140703
+ https://bugs.webkit.org/show_bug.cgi?id=107556
+
+ r140561 was not the reason for the Android breakage
+
+ * DumpRenderTree/chromium/TestShell.cpp:
+ (TestShell::~TestShell):
+ (TestShell::closeWindow):
+ * DumpRenderTree/chromium/WebViewHost.cpp:
+ (WebViewHost::WebViewHost):
+ (WebViewHost::~WebViewHost):
+ (WebViewHost::shutdown):
+ * DumpRenderTree/chromium/WebViewHost.h:
+ (WebViewHost):
+
2013-01-24 Dean Jackson <d...@apple.com>
Allow some plugin snapshot UI content to come from Injected Bundle
Modified: trunk/Tools/DumpRenderTree/chromium/TestShell.cpp (140716 => 140717)
--- trunk/Tools/DumpRenderTree/chromium/TestShell.cpp 2013-01-24 21:31:00 UTC (rev 140716)
+++ trunk/Tools/DumpRenderTree/chromium/TestShell.cpp 2013-01-24 21:37:51 UTC (rev 140717)
@@ -202,6 +202,8 @@
m_testRunner->setDelegate(0);
m_testRunner->setWebView(0);
m_drtDevToolsAgent->setWebView(0);
+ if (m_webViewHost)
+ m_webViewHost->shutdown();
}
void TestShell::createDRTDevToolsClient(DRTDevToolsAgent* agent)
@@ -794,6 +796,7 @@
if (window->webWidget() == m_focusedWidget)
focusedWidget = 0;
+ window->shutdown();
delete window;
// We set the focused widget after deleting the web view host because it
// can change the focus.
Modified: trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp (140716 => 140717)
--- trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp 2013-01-24 21:31:00 UTC (rev 140716)
+++ trunk/Tools/DumpRenderTree/chromium/WebViewHost.cpp 2013-01-24 21:37:51 UTC (rev 140717)
@@ -1081,12 +1081,22 @@
: m_shell(shell)
, m_proxy(0)
, m_webWidget(0)
+ , m_shutdownWasInvoked(false)
{
reset();
}
WebViewHost::~WebViewHost()
{
+ ASSERT(m_shutdownWasInvoked);
+ if (m_inModalLoop)
+ webkit_support::QuitMessageLoop();
+}
+
+void WebViewHost::shutdown()
+{
+ ASSERT(!m_shutdownWasInvoked);
+
// DevTools frontend page is supposed to be navigated only once and
// loading another URL in that Page is an error.
if (m_shell->devToolsWebView() != this) {
@@ -1101,8 +1111,8 @@
m_layerTreeView.clear();
webWidget()->close();
- if (m_inModalLoop)
- webkit_support::QuitMessageLoop();
+ m_webWidget = 0;
+ m_shutdownWasInvoked = true;
}
void WebViewHost::setWebWidget(WebKit::WebWidget* widget)
Modified: trunk/Tools/DumpRenderTree/chromium/WebViewHost.h (140716 => 140717)
--- trunk/Tools/DumpRenderTree/chromium/WebViewHost.h 2013-01-24 21:31:00 UTC (rev 140716)
+++ trunk/Tools/DumpRenderTree/chromium/WebViewHost.h 2013-01-24 21:37:51 UTC (rev 140717)
@@ -79,6 +79,7 @@
public:
WebViewHost(TestShell*);
virtual ~WebViewHost();
+ void shutdown();
void setWebWidget(WebKit::WebWidget*);
WebKit::WebView* webView() const;
WebKit::WebWidget* webWidget() const;
@@ -371,6 +372,9 @@
bool m_hasWindow;
bool m_inModalLoop;
+
+ bool m_shutdownWasInvoked;
+
WebKit::WebRect m_windowRect;
// true if we want to enable smart insert/delete.
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes