Title: [198634] branches/safari-601.1.46-branch/Source/WebCore
Revision
198634
Author
matthew_han...@apple.com
Date
2016-03-24 11:14:23 -0700 (Thu, 24 Mar 2016)

Log Message

Merge r198157. rdar://problem/25271134

Modified Paths

Diff

Modified: branches/safari-601.1.46-branch/Source/WebCore/ChangeLog (198633 => 198634)


--- branches/safari-601.1.46-branch/Source/WebCore/ChangeLog	2016-03-24 18:14:19 UTC (rev 198633)
+++ branches/safari-601.1.46-branch/Source/WebCore/ChangeLog	2016-03-24 18:14:23 UTC (rev 198634)
@@ -1,5 +1,28 @@
 2016-03-24  Matthew Hanson  <matthew_han...@apple.com>
 
+        Merge r198157. rdar://problem/25271134
+
+    2016-03-14  Simon Fraser  <simon.fra...@apple.com>
+
+            Fix crash when reloading a page using requestAnimationFrame on iOS
+            https://bugs.webkit.org/show_bug.cgi?id=155465
+            rdar://problem/25100202
+
+            Reviewed by Tim Horton.
+
+            On iOS, it's possible for all clients for a DisplayRefreshMonitor
+            to be unregistered, but still get a subsequent displayDidRefresh() for that monitor.
+            In this case, we would remove(notFound) which release-asserts.
+
+            Fix by just checking for notFound.
+
+            Unable to test because requestAnimationFrame doesn't work in the simulator.
+
+            * platform/graphics/DisplayRefreshMonitorManager.cpp:
+            (WebCore::DisplayRefreshMonitorManager::displayDidRefresh):
+
+2016-03-24  Matthew Hanson  <matthew_han...@apple.com>
+
         Merge r195614. rdar://problem/24850429
 
     2016-01-26  Philip Rogers  <p...@chromium.org>

Modified: branches/safari-601.1.46-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitorManager.cpp (198633 => 198634)


--- branches/safari-601.1.46-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitorManager.cpp	2016-03-24 18:14:19 UTC (rev 198633)
+++ branches/safari-601.1.46-branch/Source/WebCore/platform/graphics/DisplayRefreshMonitorManager.cpp	2016-03-24 18:14:23 UTC (rev 198634)
@@ -109,8 +109,8 @@
         return;
 
     size_t monitorIndex = m_monitors.find(&monitor);
-    ASSERT(monitorIndex != notFound);
-    m_monitors.remove(monitorIndex);
+    if (monitorIndex != notFound)
+        m_monitors.remove(monitorIndex);
 }
 
 void DisplayRefreshMonitorManager::windowScreenDidChange(PlatformDisplayID displayID, DisplayRefreshMonitorClient& client)
_______________________________________________
webkit-changes mailing list
webkit-changes@lists.webkit.org
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to