Closed
Bug 1508693
Opened 6 years ago
Closed 6 years ago
Fails to Paint in paused.js
Categories
(Core Graveyard :: Web Replay, defect)
Core Graveyard
Web Replay
Tracking
(firefox65 fixed)
RESOLVED
FIXED
mozilla65
Tracking | Status | |
---|---|---|
firefox65 | --- | fixed |
People
(Reporter: jlast, Assigned: bhackett1024)
References
Details
Attachments
(2 files)
1.15 MB,
image/png
|
Details | |
26.50 KB,
patch
|
loganfsmyth
:
review+
|
Details | Diff | Splinter Review |
STR:
1. cd debugger.html; yarn; yarn start;
2. go to http://localhost:8000/; launch firefox remotely, select the first tab
3. add a breakpoint in actions/paused.js#58 & #66
4. pause in the debugger at paused.js#58
5. resume and pause at #66
ER: see the debug line, AR see Paint Failure
Assignee | ||
Comment 1•6 years ago
|
||
The problem here is that we don't support all the middleman calls needed to render a checkbox after diverging from the recording. The attached patch adds enough to make this work. Additionally, I went through all the code under nsNativeThemeCocoa::RenderWidget --- which is the entry point through which all these OS specific widgets are rendered --- and added middleman call support for all the calls there, including some redirections that were missing entirely. This patch also has some improvements to the reporting of fatal errors related to middleman calls when the devtools.recordreplay.allowRepaintFailures is set to false.
Assignee: nobody → bhackett1024
Attachment #9026866 -
Flags: review?(lsmyth)
Comment 2•6 years ago
|
||
Comment on attachment 9026866 [details] [diff] [review]
patch
Review of attachment 9026866 [details] [diff] [review]:
-----------------------------------------------------------------
::: toolkit/recordreplay/ProcessRedirectDarwin.cpp
@@ -359,5 @@
> MACRO(CGColorSpaceCreateDeviceRGB, RR_ScalarRval, nullptr, Middleman_CreateCFTypeRval) \
> MACRO(CGColorSpaceCreatePattern, RR_ScalarRval) \
> MACRO(CGColorSpaceRelease, RR_ScalarRval, nullptr, nullptr, Preamble_Veto<0>) \
> - MACRO(CGContextBeginTransparencyLayerWithRect) \
> - MACRO(CGContextClipToRects, RR_ScalarRval, nullptr, \
Out of curiosity, what isn't this calling `RR_ScalarRval` anymore?
Attachment #9026866 -
Flags: review?(lsmyth) → review+
Assignee | ||
Comment 3•6 years ago
|
||
(In reply to Logan Smyth [:loganfsmyth] from comment #2)
> Comment on attachment 9026866 [details] [diff] [review]
> patch
>
> Review of attachment 9026866 [details] [diff] [review]:
> -----------------------------------------------------------------
>
> ::: toolkit/recordreplay/ProcessRedirectDarwin.cpp
> @@ -359,5 @@
> > MACRO(CGColorSpaceCreateDeviceRGB, RR_ScalarRval, nullptr, Middleman_CreateCFTypeRval) \
> > MACRO(CGColorSpaceCreatePattern, RR_ScalarRval) \
> > MACRO(CGColorSpaceRelease, RR_ScalarRval, nullptr, nullptr, Preamble_Veto<0>) \
> > - MACRO(CGContextBeginTransparencyLayerWithRect) \
> > - MACRO(CGContextClipToRects, RR_ScalarRval, nullptr, \
>
> Out of curiosity, what isn't this calling `RR_ScalarRval` anymore?
This is fixing a bug: CGContextClipToRects does not return anything, so there isn't a point to recording/replaying its return value.
Pushed by bhackett@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/70f4239b2fab
Add middleman call support for functions used in rendering widgets, r=lsmyth.
Comment 5•6 years ago
|
||
bugherder |
Status: NEW → RESOLVED
Closed: 6 years ago
status-firefox65:
--- → fixed
Resolution: --- → FIXED
Target Milestone: --- → mozilla65
Updated•5 years ago
|
Product: Core → Core Graveyard
You need to log in
before you can comment on or make changes to this bug.
Description
•