Closed Bug 1281993 Opened 8 years ago Closed 8 years ago

Green alias on canvas text with XRender disabled, only on Firefox in Ubuntu.

Categories

(Core :: Graphics: Text, defect)

46 Branch
x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 1278957
Tracking Status
firefox50 --- wontfix
firefox51 --- fixed
firefox52 --- fixed
firefox53 --- fixed

People

(Reporter: lb1.3, Assigned: sotaro)

References

Details

(Keywords: regression)

Attachments

(3 files, 3 obsolete files)

Attached image goofyalias.png (deleted) —
User Agent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:46.0) Gecko/20100101 Firefox/46.0 Build ID: 20160511224433 Steps to reproduce: Go to http://demo.sharefaithwebsites.com/template55/ and create a demo, "edit" the top banner with the top right banner editor, add text and save to canvas. Note on Firefox on Ubuntu 14.04 or 16.04, it adds odd green outline to text, unlike Chrome or Firefox on other systems. Actual results: Note that this adds an odd green to the edges of the text (see attached image). Expected results: It should work on Ubuntu Firefox as on Windows or Mac.
Component: Untriaged → Graphics: Text
Product: Firefox → Core
I confirmed the problem on Firefox 64. On linux Firefox 64, cairo is used for canvas backend(gfx.canvas.azure.backends). It seems to cause the problem. I did not see the problem on m-c that uses skia as canvas backend.
Skia canvas is enabled on linux since Firefox 48 by Bug 1244754.
:lsalzman, can you comment to the bug?
Flags: needinfo?(lsalzman)
Attached file conf.d.tar.gz on my ubuntu (obsolete) (deleted) —
Attached file conf.d.tar.gz on my ubuntu (obsolete) (deleted) —
Attachment #8766156 - Attachment is obsolete: true
Attached file conf.d.tar.gz on my ubuntu (deleted) —
Attachment #8766157 - Attachment is obsolete: true
Status: UNCONFIRMED → NEW
Ever confirmed: true
Keywords: regression
With mozregression bug 1180942 seems to cause the regression. 28:51.72 INFO: Oh noes, no (more) inbound revisions :( 28:51.72 INFO: Last good revision: 16bb246db6427c4131383beb1f71076ffedefc23 28:51.72 INFO: First bad revision: 8cd99e9b6034a6417ba17b426e6537ccb8aa9bf2 28:51.72 INFO: Pushlog: https://hg.mozilla.org/integration/mozilla-inbound/pushloghtml?fromchange=16bb246db6427c4131383beb1f71076ffedefc23&tochange=8cd99e9b6034a6417ba17b426e6537ccb8aa9bf2 28:52.42 INFO: Looks like the following bug has the changes which introduced the regression: https://bugzilla.mozilla.org/show_bug.cgi?id=1180942
Flags: needinfo?(lsalzman)
Blocks: 1180942
Has Regression Range: --- → yes
OS: Unspecified → Linux
Hardware: Unspecified → x86_64
Summary: Green alias on canvas, only on Firefox in Ubuntu. → Green alias on canvas with XRender disabled, only on Firefox in Ubuntu.
Assignee: nobody → sotaro.ikeda.g
The problem seems similar to bug 363861. It added workaround to several cairo-surfaces, but not to cairo_image_surface. When I rollbacked workaround of cairo_xlib_surface in bug 363861, I could reproduce the problem with cairo_xlib_surface.
Summary: Green alias on canvas with XRender disabled, only on Firefox in Ubuntu. → Green alias on canvas text with XRender disabled, only on Firefox in Ubuntu.
I tried it in Firefox developer edition, then tried it with updated Firefox developer edition 49, and it now works ok, no green. Still happening on my Firefox 46.0.1 on same machine.
Attached patch wip patch (obsolete) (deleted) — Splinter Review
Attachment #8774676 - Attachment is obsolete: true
This problem happens when gfxFont set CAIRO_ANTIALIAS_SUBPIXEL to cairo_scaled_font_t and cairo-image-surface does not permit subpixelAA. And CAIRO_ANTIALIAS_SUBPIXEL is set often when gfxFcPlatformFontList is used. gfxFcPlatformFontList is used on linux. https://dxr.mozilla.org/mozilla-central/source/gfx/thebes/gfxFcPlatformFontList.cpp#639 Similar code patch exist when GDIFont is used. But it is used only on xp https://dxr.mozilla.org/mozilla-central/source/gfx/thebes/gfxGDIFontList.cpp#232 The problem happens when DrawTargetCairo::FillGlyphs() is used. But canvas 2d already uses skia as default backend and Bug 1278957 is going to use skia as content rendering. Therefore DrawTargetCairo::FillGlyphs() is going to be not used on default setting soon.
Comment on attachment 8779221 [details] [diff] [review] patch - Add grey scale fallback to cairo-image-surface :jrmuizel, can you feedback to the patch?
Attachment #8779221 - Flags: feedback?(jmuizelaar)
Attachment #8779221 - Flags: feedback?(jmuizelaar)
Sotaro, what's the current status of this bug?
Flags: needinfo?(sotaro.ikeda.g)
The problem happen only on cairo canvas on linux. Linux does not use cairo canvas any more. By comment 2, since firefox 48, linux uses skia canvas. It it not a problem on skia linux.
Status: NEW → RESOLVED
Closed: 8 years ago
Flags: needinfo?(sotaro.ikeda.g)
Resolution: --- → INVALID
Resolution: INVALID → DUPLICATE
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: