Closed Bug 1576318 Opened 4 years ago Closed 4 years ago

Fix previewing for special-cased objects


(Core Graveyard :: Web Replay, defect)

Not set


(firefox70 fixed)

Tracking Status
firefox70 --- fixed


(Reporter: bhackett1024, Assigned: bhackett1024)



(6 files)

Attached patch patchSplinter Review

An assortment of objects don't preview correctly when using web replay. Additionally, even if objects do preview correctly, doing so might require making debugger requests, which requires a replaying process to be at the point where the debugger is paused at and prevents us from being able to fully update the UI based on cached pause data.

The attached patch fixes these issues for an assortment of objects --- typed arrays, sets, maps, weak sets, weak maps, regexps, dates, errors. I also tried to call the right native instead of accessing properties which might have been overridden, like RegExp.prototype.toString, for more consistency with how we handle typed arrays.

Type: enhancement → defect
Pushed by
Part 1 - Supply contents of containers and additional information needed while previewing to the ReplayDebugger, r=loganfsmyth.
Part 2 - Use replay-friendly methods when previewing objects and getting the contents of container objects, r=loganfsmyth.
Part 3 - Avoid rerendering messages when the paused execution point has not changed, r=loganfsmyth,nchevobbe.
Part 4 - Add testing method to get the debugger requests and associated stacks for the current pause, r=loganfsmyth.
Part 5 - Add tests that we can preview assorted objects while replaying, and pause the debugger without making debugger requests, r=loganfsmyth.
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.