Closed Bug 1493482 Opened 6 years ago Closed 6 years ago

Recording airtable.com causes frozen page and empty devtools

Categories

(Core Graveyard :: Web Replay, defect)

All
macOS
defect
Not set
normal

Tracking

(firefox64 fixed)

RESOLVED FIXED
mozilla64
Tracking Status
firefox64 --- fixed

People

(Reporter: Harald, Assigned: bhackett1024)

References

Details

Attachments

(2 files)

Attached image Screen Shot.PNG
STR:
- Make an account on airtable.com, log in
- Start Recording and open airtable.com in logged in state

ER: Page load completes
AR: Page gets stuck in non-interactive state, opening devtools shows an empty toolbox

See attached screenshot, at some point to the page switched to some Firefox update state (Nightly does not have an update pending).

Interesting browser console output

Exception while opening the toolbox Unable to attach to the tab: Error: 'attach' request packet has no destination. Unable to attach to the tab: Error: 'attach' request packet has no destination. toolbox.js:572:7
open/<
resource://devtools/client/framework/toolbox.js:572:7
Hmm, I've tried several times and haven't been able to reproduce this.  Is there anything in about:crashes that you get after the page fails to load?
Got 5 crashes from that testing session that all look alike: https://crash-stats.mozilla.com/report/index/34c1bc22-1b10-4a99-918a-76ff90180924
Attached patch potential patchSplinter Review
OK, thanks.  From the stacks in that report this looks like the same issue as bug 1479921, which I also wasn't able to reproduce.  Do you get these crashes with a clean profile?  If so, my inability to reproduce this might be related to our different OS versions --- I'm on 10.12 and from the report it looks like you're on 10.13.

Looking at the related code, right before the call to CFRetain the caller (gfxMacPlatformFontList::MakePlatformFont) invokes CGDataProviderRelease.  We don't redirect CGDataProviderRelease, so this library call will do its normal behavior when recording/replaying.  On my machine CGDataProviderRelease is a simple wrapper for CFRelease (which we do redirect), but on other OS versions this function could do something different and be able to trigger a recording mismatch.

The attached patch adds a redirection for CGDataProviderRelease.  I'm not 100% sure this will fix the problem, but per the above it's something we should be doing anyways.
Assignee: nobody → bhackett1024
Attachment #9011783 - Flags: review?(nfroyd)
Attachment #9011783 - Flags: review?(nfroyd) → review+
Pushed by bhackett@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/320794ba9690
Add a redirection for CGDataProviderRelease, r=froydnj.
https://hg.mozilla.org/mozilla-central/rev/320794ba9690
Status: NEW → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla64
Product: Core → Core Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: