Bug 137162

Summary: Web Replay: Playback position updates should be sent before the next event loop input is dispatched
Product: WebKit Reporter: Brian Burg <burg>
Component: Web InspectorAssignee: Brian Burg <burg>
Status: RESOLVED FIXED    
Severity: Normal CC: commit-queue, graouts, joepeck, timothy, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: 528+ (Nightly build)   
Hardware: All   
OS: All   
Bug Depends on:    
Bug Blocks: 136292, 137078, 137083    
Attachments:
Description Flags
WIP 0a
none
WIP 0b
none
WIP 0c
none
Patch none

Description Brian Burg 2014-09-26 16:44:18 PDT
To drive updates to playback position in the UI we send ReplayPosition coordinates as the backend dispatches inputs.
However, right now the semantics of being at a ReplayPosition is currently muddy. The update is currently sent *after*
the input at the offset is dispatched. This leads to unexpected results if the debugger pauses while the input is dispatched,
and the frontend has a stale playback position when the debugger pauses.

What it should mean is that for ReplayPosition(segmentOffset=n, inputOffset=m), the backend is about to dispatch input m,
but has not yet begun to do so. Thus, any subsequent page execution events (profiling, debugger pauses, etc) are caused by
m being dispatched.
Comment 1 Radar WebKit Bug Importer 2014-09-26 16:44:32 PDT
<rdar://problem/18475656>
Comment 2 Brian Burg 2014-09-26 16:47:37 PDT
Created attachment 238748 [details]
WIP 0a
Comment 3 Brian Burg 2014-09-26 16:48:10 PDT
Created attachment 238749 [details]
WIP 0b
Comment 4 Brian Burg 2014-09-26 16:48:36 PDT
Created attachment 238750 [details]
WIP 0c
Comment 5 Brian Burg 2014-09-26 17:48:50 PDT
Created attachment 238751 [details]
Patch
Comment 6 WebKit Commit Bot 2014-09-27 15:17:35 PDT
Comment on attachment 238751 [details]
Patch

Clearing flags on attachment: 238751

Committed r174037: <http://trac.webkit.org/changeset/174037>
Comment 7 WebKit Commit Bot 2014-09-27 15:17:38 PDT
All reviewed patches have been landed.  Closing bug.