# STEPS TO REPRODUCE: 1. inspect <https://devinrousso.com/demo/WebKit/canvas.html> 2. open the Canvas tab 3. start a single-frame recording of the 2D canvas 4. click the button with "8" 5. once the recording loads, select the "Frame 1" tree element 6. start a single-frame recording of the 2D canvas 7. click the button with "9" => there is no "Frame 1" tree element, even though the visual action scrubber says there are at least 2 visual actions
AFAICT, it looks like the issue has to do with `Object.prototype.soon`. Here's the stream of calls: 1. `appendChild` for "Initial State" 2. `soon` `updateVirtualizedElements` for the recording actions `TreeOutline` 3. the timeout from (2) fires, which actually adds the `TreeElement` from (1) to the DOM 4. `appendChild` for "Frame 1" 5. `soon` `updateVirtualizedElements` for the recording actions `TreeOutline` => the timeout from (5) never seems to fire
(In reply to Devin Rousso from comment #0) > 5. once the recording loads, select the "Frame 1" tree element Interestingly, the issue only reproduces when any `TreeElement` other than the first one is selected. Additionally, the first recording (3) can be multi-frame, but the second recording (6) has to be single-frame.
Created attachment 362092 [details] Patch
Comment on attachment 362092 [details] Patch r=me
Comment on attachment 362092 [details] Patch Clearing flags on attachment: 362092 Committed r241875: <https://trac.webkit.org/changeset/241875>
All reviewed patches have been landed. Closing bug.
<rdar://problem/48289926>