Title: [202396] branches/safari-602.1.38-branch/Source/WebKit2
- Revision
- 202396
- Author
- [email protected]
- Date
- 2016-06-23 13:21:34 -0700 (Thu, 23 Jun 2016)
Log Message
Merged r202393. rdar://problem/17665473
Modified Paths
Diff
Modified: branches/safari-602.1.38-branch/Source/WebKit2/ChangeLog (202395 => 202396)
--- branches/safari-602.1.38-branch/Source/WebKit2/ChangeLog 2016-06-23 20:16:51 UTC (rev 202395)
+++ branches/safari-602.1.38-branch/Source/WebKit2/ChangeLog 2016-06-23 20:21:34 UTC (rev 202396)
@@ -1,5 +1,28 @@
2016-06-23 Babak Shafiei <[email protected]>
+ Merge r202393.
+
+ 2016-06-23 Chris Dumez <[email protected]>
+
+ [iOS] A WebPageProxy in closed state should not be allowed to hold a process assertion
+ https://bugs.webkit.org/show_bug.cgi?id=159068
+ <rdar://problem/17665473>
+
+ Reviewed by Tim Horton.
+
+ A WebPageProxy in closed state should not be allowed to hold a process assertion. It
+ currently happens that WebPageProxy::close() gets called but that the WebPageProxy is
+ kept alive by Safari (e.g. In case of top-hit preloading). In such cases, we fail to
+ release the foreground process assertion that the WebPageProxy holds.
+
+ We should clear the foreground process assertion that the WebPageProxy holds as soon
+ as WebPageProxy::close() is called.
+
+ * UIProcess/WebPageProxy.cpp:
+ (WebKit::WebPageProxy::close):
+
+2016-06-23 Babak Shafiei <[email protected]>
+
Merge patch for rdar://problem/26831566.
2016-06-23 Dean Jackson <[email protected]>
Modified: branches/safari-602.1.38-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp (202395 => 202396)
--- branches/safari-602.1.38-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp 2016-06-23 20:16:51 UTC (rev 202395)
+++ branches/safari-602.1.38-branch/Source/WebKit2/UIProcess/WebPageProxy.cpp 2016-06-23 20:21:34 UTC (rev 202396)
@@ -868,6 +868,11 @@
m_process->removeWebPage(m_pageID);
m_process->removeMessageReceiver(Messages::WebPageProxy::messageReceiverName(), m_pageID);
m_process->processPool().supplement<WebNotificationManagerProxy>()->clearNotifications(this);
+
+#if PLATFORM(IOS)
+ // Make sure we don't hold a process assertion after getting closed.
+ m_activityToken = nullptr;
+#endif
}
bool WebPageProxy::tryClose()
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes