Closed Bug 856419 Opened 11 years ago Closed 11 months ago

Artifacts when redrawing text with --enable-system-cairo

Categories

(Core :: Graphics: Text, defect)

19 Branch
x86_64
OpenBSD
defect

Tracking

()

RESOLVED INVALID

People

(Reporter: jcs, Unassigned)

Details

Attachments

(4 files)

When scrolling through paragraphs of text, occasionally the text will be redrawn with artifacts over it that look like it's been bolded, but when scrolling that area of text off the page, raising another window over it, or reloading the page, the text will be returned to normal.

Just as I was entering this bug, the problem showed each time I would make a spelling mistake and this text box had to be redrawn with the red underline.  If I hit backspace to erase the red underline, then hit space, the text above would get bolder.  If I did that a few times in a row, the text would get even bolder.

This problem has been reported by at least a few different OpenBSD users and appears to have started after 17.0.  It is not reproducible in 17.0 or lower, and is still present in 19.0.2.  I have tried various versions of Freetype with no change, and am currently using 2.4.11.

It is reproducible with different fonts (system or web) and on different sites.
Summary: Font artifacts when redrawing text → Artifacts when redrawing text
I've attached three screenshots showing normal text with a hit-a-hint extension drawing over links (an easy way to reproduce the problem), the same text after dismissing the hit-a-hint which shows slight artifacts, and then after repeating it a number of times showing extreme artifacts.
Component: General → Graphics: Text
Product: Firefox → Core
Here is a video of the issue: http://www.youtube.com/watch?v=I4CFjyv39VQ
I am unsure if this is just related to freebsd and/or possibly a dependency?
possibly related to zindex?
openbsd, not freebsd. And the issue on the youtube video seems different from the issue we're seeing here.
well I'm on freebsd and I have exactly the same issue.
I think this may have caused the issue:  https://bugzilla.mozilla.org/show_bug.cgi?id=814101
about:config
gfx.xrender.enabled;false
seems to fix the problem.

which then solely puts the issue at the bugfix above.
(In reply to Darren Johnston from comment #10)
> gfx.xrender.enabled;false
> seems to fix the problem.

helps only in combination with layers.acceleration.force-enabled (Nightly here)

The issue happens with just xrender disabled or just gl layers enabled and with different cairo versions (1.10.2 and 1.12.14). What changes is place/time to reproduce: hint-or-hint, navigating editbox, moving in history, scrolling, etc.
(In reply to Jan Beich from comment #11)
> (In reply to Darren Johnston from comment #10)
> > gfx.xrender.enabled;false
> > seems to fix the problem.
> 
> helps only in combination with layers.acceleration.force-enabled (Nightly
> here)
> 
> The issue happens with just xrender disabled or just gl layers enabled and
> with different cairo versions (1.10.2 and 1.12.14). What changes is
> place/time to reproduce: hint-or-hint, navigating editbox, moving in
> history, scrolling, etc.

flipped gfx.xrender.enabled:true
and layers.acceleration.force-enabled

The artifacts are still there, but at a lesser rate.  I can live with it now =)
I guess bug 709477 wasn't fixed or regressed upstream. After building
gfx/cairo as shared library and LD_PRELOAD'ing the artifact is gone.

xlib-glyph-clip-region.patch still applies fine on freebsd where we're
using cairo-1.10.2 in the ports tree.
Summary: Artifacts when redrawing text → Artifacts when redrawing text with --enable-system-cairo
Happens with systemwide 1.12.4 here, and xlib-glyph-clip-region.patch doesnt apply against it.
 
gfx/cairo/README mentions 'xlib-glyph-clip-region.patch: bug 709477, addressed upstream by be1ff2f45fdbc69537e513834fcffa0435e63073', but the upstream commit (http://cgit.freedesktop.org/cairo/commit/?id=be1ff2f45fdbc69537e513834fcffa0435e63073) looks different.
I'm having exactly the same issues on a *Linux*, after switching on system-cairo. It's firefox-21.0, cairo-1.12.14 (xcb enabled), freetype-2.4.11 with infinality patches.

I'll be glad for any pointers (feel free to ask for info, rebuild against different settings, etc.).
(In reply to vcunat from comment #15)
> I'm having exactly the same issues on a *Linux*, after switching on
> system-cairo. It's firefox-21.0, cairo-1.12.14 (xcb enabled),
> freetype-2.4.11 with infinality patches.
> 
> I'll be glad for any pointers (feel free to ask for info, rebuild against
> different settings, etc.).

And is it okay when built against the bundled cairo lib ? We have the same cairo/xcb setup on OpenBSD.
Yes, up to now our setup was the same but for internal cairo (I don't know what version/config it has) and this issues didn't happen.
Perhaps I should stress that to make it compile with system cairo, I had to apply patch from https://bugzil.la/722975.
Another important thing may be that we use subpixel smoothing by default in freetype. Even with system cairo firefox/thunderbird does *not* render with subpixel smoothing (unlike all other apps), but still IMHO it does look better than with the internal cairo. Better font rendering was the main reason I was trying this change (besides non-shared libs being ugly and non-UNIX style).
Severity: normal → S3

System cairo is not a thing since bug 1432751.

Status: UNCONFIRMED → RESOLVED
Closed: 11 months ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: