Closed Bug 895051 Opened 11 years ago Closed 11 years ago

"ASSERTION: degenerate transform while synthetic bolding" with drawWindow

Categories

(Core :: Graphics: Text, defect)

x86_64
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 906704

People

(Reporter: jruderman, Unassigned)

References

Details

(Keywords: assertion, testcase)

Attachments

(3 files)

Attached file testcase
###!!! ASSERTION: degenerate transform while synthetic bolding: 'm != 0.0', file gfx/thebes/gfxFont.cpp, line 2272
Attached file stack
This seems to arise during generation of the page thumbnail for Panorama, not the main page drawing.

There's a regression in Nightly where synthetic bolding is no longer handled properly when generating thumbnails; something has changed about the results we're getting when calling

    gfxSize t = aContext->UserToDevice(gfxSize(1.0, 0.0))

in gfxFont::CalcXScale(), and that's what ends up hitting this assertion (and then a divide-by-zero error) in the case where content is rotated exactly 90°.

I'll attach a testcase that demonstrates a visual glitch as a result of this, for rotations that approach 90°.

The regression first appears in Nightly of 2013-07-15.

OK: Nightly 2013-07-14
Built from http://hg.mozilla.org/mozilla-central/rev/18467a85acf6

Bad: Nightly 2013-07-15
Built from http://hg.mozilla.org/mozilla-central/rev/ff0a372e3170

http://hg.mozilla.org/mozilla-central/pushloghtml?fromchange=18467a85acf6&tochange=ff0a372e3170

Given that this seems to be Mac-only, I'm suspicious that bug 892966 may be involved, though I have not tried backing this out locally to confirm.
This testcase avoids the exact 90° rotation, so it shouldn't assert or crash, but by opening the Panorama view (Cmd-Shift-E) you can see the synthetic-bolding problem: note the incorrect double-strike of the "a" letters that are rotated to a close-to-vertical orientation.
Yes, it is likely bug 892966. That somewhat unintentionally enables us using CoreGraphics Azure for thumbnail drawing. I expect I have also broken it for the non-drawwindow case with bug 896489.
Bug 906704 is fixing this.
Status: NEW → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: