Closed Bug 1319318 Opened 8 years ago Closed 8 years ago

Intermittent file:///builds/slave/test/build/tests/reftest/tests/layout/generic/crashtests/1271765.html | assertion count 3 is more than expected 0 assertions from ASSERTION: mismatched writing mode: '!aWritingMode.IsOrthogonalTo(mWritingMode)'

Categories

(Core :: Layout, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla53
Tracking Status
firefox51 --- unaffected
firefox52 --- unaffected
firefox53 --- fixed

People

(Reporter: intermittent-bug-filer, Assigned: dholbert)

References

Details

(Keywords: intermittent-failure)

Attachments

(1 file)

Blocks: 1271765
Flags: needinfo?(ralin)
I realized that this is a perma fail on windows 7 and windows 8- we do not see this as there seems to be a bug in reporting the failure (bug 1322353).
:dholbert, I see you reviewed this bug when it landed, could you help figure out what is going on here, or get the right people on this bug who can look at it in the next week or two?
Flags: needinfo?(dholbert)
(In reply to Joel Maher ( :jmaher) from comment #4)
> :dholbert, I see you reviewed this bug when it landed, could you help figure
> out what is going on here, or get the right people on this bug who can look
> at it in the next week or two?

So sorry for the late reply. I was struggling figuring out the root cause, but still have no idea how is going on crashtest. :dholbert, could you help me to see whether I was doing right on 1271765.html for wrting-mode? Thank you very much.
Flags: needinfo?(ralin)
I've got a patch which I'll post shortly.  This crashtest's rendering is still broken (nothing shows up) with or without the patch, but the patch at least fixes the assert by fixing part of the problem.
thanks :dholbert, this is exciting.
Comment on attachment 8817430 [details]
Bug 1319318: When resolving a video/audio frame's shrinkwrapped BSize from controls, check whether controls are orthogonal when reading its size.

https://reviewboard.mozilla.org/r/97706/#review98030

::: layout/generic/nsVideoFrame.cpp:380
(Diff revision 1)
> -        contentBoxBSize = kidDesiredSize.BSize(myWM);
> +        // Resolve our own BSize based on the controls' size in the same axis.
> +        contentBoxBSize = myWM.IsOrthogonalTo(wm) ?
> +          kidDesiredSize.ISize(wm) : kidDesiredSize.BSize(wm);

The issue here (with the current code) is from a mistake I made in review, in the first nit within bug 1271765 comment 117. I mistakenly mis-remembered how ReflowOutput represents its sizes.

(It represents them in whatever WritingMode was passed in to its constructor [as part of the ReflowInput arg when using the ReflowInput-taking constructor].  So in this case, this ReflowOutput is represented in terms of the child's WM, which is "wm".  And we're wanting to query it for the BSize in the parent's writing-mode.)
Some additional context:
 * I believe this is currently a perma-fail *on all platforms* (at least, it's a perma-fail on my local machine, running linux) -- though I guess it wasn't showing up on TreeHerder due to a reporting issue, per comment 3.

The assertion that's failing is this one, in the ReflowOutput::BSize() accessor invoked in the line that I'm replacing in this patch:
>  nscoord BSize(mozilla::WritingMode aWritingMode) const {
>    NS_ASSERTION(!aWritingMode.IsOrthogonalTo(mWritingMode),
>                 "mismatched writing mode");
https://dxr.mozilla.org/mozilla-central/rev/8103c612b79c2587ea4ca1b0a9f9f82db4b185b8/layout/generic/ReflowOutput.h#230-232

As noted in comment 6, the rendering here is still not correct (the <audio> frame ends up 0-sized and the controls don't show up), but I think that's a different issue -- I'll file a followup on that.
Comment on attachment 8817430 [details]
Bug 1319318: When resolving a video/audio frame's shrinkwrapped BSize from controls, check whether controls are orthogonal when reading its size.

https://reviewboard.mozilla.org/r/97706/#review98064
Attachment #8817430 - Flags: review?(mats) → review+
Filed bug 1322512 as the followup noted above.
Try run, to be sure this doesn't trigger any other assertions / test-failures somehow:
  https://treeherder.mozilla.org/#/jobs?repo=try&revision=0f79308da824
Flags: needinfo?(dholbert)
Try issues look unrelated. Autolanding.
Assignee: nobody → dholbert
Status: NEW → ASSIGNED
Pushed by dholbert@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/9d41238dabf4
When resolving a video/audio frame's shrinkwrapped BSize from controls, check whether controls are orthogonal when reading its size. r=mats
https://hg.mozilla.org/mozilla-central/rev/9d41238dabf4
Status: ASSIGNED → RESOLVED
Closed: 8 years ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla53
this resulted in unexpected pass results like https://treeherder.mozilla.org/logviewer.html#?job_id=5840066&repo=mozilla-central#L110777 after merging to m-c -  and so needed to backout can we fix this ?
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Flags: needinfo?(dholbert)
Backout by cbook@mozilla.com:
https://hg.mozilla.org/mozilla-central/rev/159f68a4533f
Backed out changeset 9d41238dabf4 for unexpected pass crashtest results after merge
It is a temporary annotation added by bug 1321127. This fix should re-land with the annotation removed.
Pushed by dholbert@mozilla.com:
https://hg.mozilla.org/integration/mozilla-inbound/rev/70a0740cbd81
When resolving a video/audio frame's shrinkwrapped BSize from controls, check whether controls are orthogonal when reading its size. r=mats
https://hg.mozilla.org/mozilla-central/rev/70a0740cbd81
Status: REOPENED → RESOLVED
Closed: 8 years ago8 years ago
Resolution: --- → FIXED
Flags: needinfo?(dholbert)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: