[Webkit-unassigned] [Bug 202655] New: iOS Safari: timestamps can be identical for consecutive rAF callbacks

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Oct 7 14:36:18 PDT 2019


https://bugs.webkit.org/show_bug.cgi?id=202655

            Bug ID: 202655
           Summary: iOS Safari: timestamps can be identical for
                    consecutive rAF callbacks
           Product: WebKit
           Version: Safari 12
          Hardware: Unspecified
                OS: Unspecified
            Status: NEW
          Severity: Normal
          Priority: P2
         Component: Layout and Rendering
          Assignee: webkit-unassigned at lists.webkit.org
          Reporter: nolan at nolanlawson.com
                CC: bfulgham at webkit.org, simon.fraser at apple.com,
                    zalan at apple.com

Created attachment 380363

  --> https://bugs.webkit.org/attachment.cgi?id=380363&action=review

Repro HTML page

Consider a web page trying to measure framerate by using the timestamps passed in to requestAnimationFrame callbacks. Per the event loop spec (https://html.spec.whatwg.org/multipage/webappapis.html#event-loop-processing-model) it seems that the timestamps should typically be ~16ms apart (and certainly >0ms apart), but on iOS Safari it's possible for them to be 0ms apart.

Here is a sample page to demonstrate: https://bl.ocks.org/nolanlawson/raw/99773cc8edc4115e6ba156a503dd2c41/

You might have to refresh the page a few times to reproduce, but often there will be one rAF callback whose timestamp is exactly the same as the previous one, e.g.:

    12
    24 (+12)
    34 (+10)
    34 (+0)  <-- exactly the same as the last one
    43 (+9)

So far this seems only reproducible on iOS Safari. I can repro on both iOS 12.4 and 13.0 (using a real iPhone for the first and a simulator for the second).

I'm not sure if the issue is with the timestamp or if the rAF callbacks are truly firing on the same turn of the event loop.

-- 
You are receiving this mail because:
You are the assignee for the bug.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-unassigned/attachments/20191007/98783bcb/attachment.html>


More information about the webkit-unassigned mailing list