Title: [135879] trunk/Source/WebKit2
Revision
135879
Author
a...@apple.com
Date
2012-11-27 10:36:27 -0800 (Tue, 27 Nov 2012)

Log Message

        [WK2] WebPageProxy::relatedPages() cannot assume that this page is known to process
        https://bugs.webkit.org/show_bug.cgi?id=103433
        <rdar://problem/12543513>

        Reviewed by Jessie Berlin.

        * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::relatedPages): Removed an incorrect
        assertion, and modified code to not rely on its condition being true.

Modified Paths

Diff

Modified: trunk/Source/WebKit2/ChangeLog (135878 => 135879)


--- trunk/Source/WebKit2/ChangeLog	2012-11-27 18:36:16 UTC (rev 135878)
+++ trunk/Source/WebKit2/ChangeLog	2012-11-27 18:36:27 UTC (rev 135879)
@@ -1,3 +1,14 @@
+2012-11-27  Alexey Proskuryakov  <a...@apple.com>
+
+        [WK2] WebPageProxy::relatedPages() cannot assume that this page is known to process
+        https://bugs.webkit.org/show_bug.cgi?id=103433
+        <rdar://problem/12543513>
+
+        Reviewed by Jessie Berlin.
+
+        * UIProcess/WebPageProxy.cpp: (WebKit::WebPageProxy::relatedPages): Removed an incorrect
+        assertion, and modified code to not rely on its condition being true.
+
 2012-11-27  Mikhail Pozdnyakov  <mikhail.pozdnya...@intel.com>
 
         [EFL][Qt][WK2] Tiles not always painted

Modified: trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp (135878 => 135879)


--- trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2012-11-27 18:36:16 UTC (rev 135878)
+++ trunk/Source/WebKit2/UIProcess/WebPageProxy.cpp	2012-11-27 18:36:27 UTC (rev 135879)
@@ -296,11 +296,11 @@
 
 PassRefPtr<ImmutableArray> WebPageProxy::relatedPages() const
 {
+    // pages() returns a list of pages in WebProcess, so this page may or may not be among them - a client can use a reference to WebPageProxy after the page has closed.
     Vector<WebPageProxy*> pages = m_process->pages();
-    ASSERT(pages.contains(this));
 
     Vector<RefPtr<APIObject> > result;
-    result.reserveCapacity(pages.size() - 1);
+    result.reserveCapacity(pages.size());
     for (size_t i = 0; i < pages.size(); ++i) {
         if (pages[i] != this)
             result.append(pages[i]);
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
http://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to