Closed Bug 970891 Opened 6 years ago Closed 6 years ago

Whitespace does not fall through font stack when between inline elements styled with font-*

Categories

(Core :: Layout: Text and Fonts, defect)

12 Branch
x86_64
Windows 7
defect
Not set

Tracking

()

RESOLVED FIXED
mozilla30

People

(Reporter: nick.evans3976, Assigned: jfkthame)

References

Details

(Keywords: regression)

Attachments

(5 files)

Attached file test.html
User Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:27.0) Gecko/20100101 Firefox/27.0 (Beta/Release)
Build ID: 20140127194636

Steps to reproduce:

1. Open test.html with test.woff in the same directory.


Actual results:

Whitespace appears as .notdef if:
- The first font on the stack does not have a space glyph, e.g. a symbol font.
- The whitespace is between inline elements.
- Those inline elements are styled with font-* properties that are not set to "normal", e.g. font-style: italic.


Expected results:

The whitespace should fall through the font stack and appear as a space glyph from a lower font. This way the space width will match the letter glyphs. (If the symbol font imposes a space glyph then the space width will not match the letter glyphs.)
Attached file test.woff
Attached image screenshot.PNG
Regression window(m-i)
Good:
http://hg.mozilla.org/integration/mozilla-inbound/rev/511078d51f71
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0a1) Gecko/20120105 Firefox/12.0a1 ID:20120105035122
Bad:
http://hg.mozilla.org/integration/mozilla-inbound/rev/c0b62edd2917
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0a1) Gecko/20120105 Firefox/12.0a1 ID:20120105041225
Pushlog:
http://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=511078d51f71&tochange=c0b62edd2917

Regressed by: bug 703100
Blocks: 703100
Component: General → Layout: Text
Keywords: regression
Version: 29 Branch → 12 Branch
Status: UNCONFIRMED → NEW
Ever confirmed: true
This arises because gfxFontGroup::MakeSpaceTextRun (rashly) assumes that the primary font in the font-group's list can be used for <space>; that's not necessarily true.
Attachment #8374089 - Flags: review?(roc)
Assignee: nobody → jfkthame
Status: NEW → ASSIGNED
Comment on attachment 8374089 [details] [diff] [review]
don't assume the primary font will always support the <space> character - fall back down the font stack if necessary.

Review of attachment 8374089 [details] [diff] [review]:
-----------------------------------------------------------------

Reftest please!
Attachment #8374089 - Flags: review?(roc) → review+
Did this patch slip through the net? (Please excuse the mixed metaphors.)

This issue remains in Nightly 30.0a1 (2014-02-23).
I was intending to land the patch and test together, once the test is reviewed - Roc, ping?
Jonathan, these messages don't seem to be reaching Robert. Is there another way you can contact him?
(In reply to Jonathan Kew (:jfkthame) from comment #8)
> I was intending to land the patch and test together, once the test is
> reviewed - Roc, ping?

Sorry, spam
Flags: needinfo?(roc)
And linux.
https://tbpl.mozilla.org/php/getParsedLog.php?id=35726388&tree=Mozilla-Inbound

Please run this through Try before pushing again.
You need to log in before you can comment on or make changes to this bug.