Web Inspector: TimelineAgent needs to handle nested runloops
authormattbaker@apple.com <mattbaker@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 19 Jun 2015 23:35:53 +0000 (23:35 +0000)
committermattbaker@apple.com <mattbaker@apple.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 19 Jun 2015 23:35:53 +0000 (23:35 +0000)
commita5b79589720303c5a7ef262559e78dffffc66dba
tree2c1a217707a28ffc0fa12b27bb392cc37c45a34b
parentde24a3f54efbc817780015905ece793ac968d459
Web Inspector: TimelineAgent needs to handle nested runloops
https://bugs.webkit.org/show_bug.cgi?id=145090

Reviewed by Joseph Pecoraro.

Source/WebCore:

Previously nested run loops caused InspectorTimelineAgent to prematurely pop the current run loop record. This
patch adds a counter to track the run loop nesting level, and rendering frame records are only pushed/popped
when the nesting level is zero. Run loop entry/exit notifications received while the debugger is paused do not
affect the nesting level.

* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::internalStart):
(WebCore::InspectorTimelineAgent::internalStop):
(WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
* inspector/InspectorTimelineAgent.h:

LayoutTests:

* TestExpectations:
Unskip tests after improvements to nested runloop handling in InspectorTimelineAgent.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@185777 268f45cc-cd09-0410-ab3c-d52691b4dbfc
LayoutTests/ChangeLog
LayoutTests/TestExpectations
Source/WebCore/ChangeLog
Source/WebCore/inspector/InspectorTimelineAgent.cpp
Source/WebCore/inspector/InspectorTimelineAgent.h