Closed Bug 394291 Opened 17 years ago Closed 17 years ago

Texts in bugzilla show_bug page are not rendered on OpenSolaris

Categories

(Core :: Graphics, defect)

Sun
Solaris
defect
Not set
normal

Tracking

()

RESOLVED FIXED

People

(Reporter: ginnchen+exoracle, Unassigned)

References

()

Details

Attachments

(1 file)

Most of texts and some widgets in bugzilla show_bug page are not rendered since 2007-8-28.
See attachment.
If I scroll the page with mouse, or move the pointer on the text, some texts will appear.

Tested on both SPARC and x86.
Nevada 70a and 71.

I've confirmed it's triggered by Bug 379886.
Attached image screenshot
Some fonts are not rendered correctly in Firefox.
I still could not figure out why.

This problem can be reproduced without patch of Bug 379886.
e.g.
In Gnome Font Preferences, set Application font to Serif instead of Sans.
You will notice a lots of text in menu, toolbar, dialog are missing on Solaris Nevada.
But gnome apps are fine.

To workaround of this bug, you can choose some fonts that work with current Minefield.
Courier for monospace
Helvetica for sans-serif
Times for serif
Firefox 2 doesn't have this issue.

So I guess maybe it's related to cairo rendering.

BTW: You may see the same problem with lxr.mozilla.org.
Linux had an identical-looking problem from 2007-08-02 to 2007-08-21ish, see bug 390787 and bug 327879 (an older, simliar bug that only showed on some systems)

I don't know if what went on in those bugs will be helpful, though, because they were confusing to me, but I hope it helps :)
Yes, it helps.

I set a breakpoint at _cairo_error.

It seems FT_Load_Glyph returns 0, but glyph->bitmap.width and rows are 0, glyph->format is FT_GLYPH_FORMAT_BITMAP.

It is freetype2 9.8.3.
I think the problem is bitmap fonts fail at some sizes.
I don't know why bug 390787 didn't fix Solaris.

A workaround is to copy /etc/fonts/conf.d/10-no-bitmaps.conf from a Linux machine to your Solaris $HOME/.fonts.conf
(maybe need to run fc-cache -f)
The problem is gone if I remove /usr/openwin/lib/X11/fonts/pcf.

Don't know where is the real cause yet.

BTW: Add FT_LOAD_NO_BITMAP to FT_Load_Glyph doesn't help, because pcf fonts are always FT_GLYPH_FORMAT_BITMAP.
FT_Load_Glyph failed when glyph_index is 1.
The same pcf file works if  glyph_index is not 1.
hmm, glyph_index 1 should be whitespace.
It is fixed by recent cairo upgrade.

gfx/cairo/cairo/src/cairo-ft-font.c

Looks like
 751 vladimir 1.30     if (width == 0 || height == 0) {
 752               	*surface = (cairo_image_surface_t *)
 753               	    cairo_image_surface_create_for_data (NULL, format, 0, 0, 0);
 754               	return (*surface)->base.status;
 755                   }
Status: NEW → RESOLVED
Closed: 17 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: