[Webkit-unassigned] [Bug 23865] Safari can be frozen by rapidly adding timers

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Feb 11 19:30:13 PST 2009


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


dimich at chromium.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
  Attachment #27585|                            |review?
               Flag|                            |




------- Comment #6 from dimich at chromium.org  2009-02-11 19:30 PDT -------
Created an attachment (id=27585)
 --> (https://bugs.webkit.org/attachment.cgi?id=27585&action=view)
Proposed patch

This patch fires timers one by one, measuring elapsed time. If too much time
elapses, it quits firing loop and reschedules. This allows thread run loop to
run. Using the JS in description, it now does not freeze UI.

However, if the script continues to run, the timer heap grows. If run for long
time, one of 2 will happen:

- user closes the tab and we freeze UI for a while removing millions of timers
from timer heap
- OOM and crash

Do we need a variant of "Slow Script" dialog in case the page tries to create
too many outstanding timers? 


-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list