[Webkit-unassigned] [Bug 104768] Uninitialized text decoration color is propagated to ruby text.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Wed Jan 16 23:30:07 PST 2013


https://bugs.webkit.org/show_bug.cgi?id=104768





--- Comment #6 from Yuki Sekiguchi <yuki.sekiguchi at access-company.com>  2013-01-16 23:31:54 PST ---
Thank you good advice, Ishii-san.

I recheck Qt code, and I find my understaning is wrong.
However, I think this code need to fix.

The propagation of text-decoration is executed at InlineTextBox::paintDecoration()
>    // Get the text decoration colors.
>    Color underline, overline, linethrough;
>    renderer()->getTextDecorationColors(deco, underline, overline, linethrough, true, isFirstLineStyle());

Color is class, so its constructer is excuted and its m_color becomes transparent and its m_valid becomes false.

RenderObject::getTextDecorationColors() skips color propagation of RenderRuby.
Therefore, text decoration flags of deco variable in InlineTextBox::paintDecoration() remain.

paintDecoration() draws text decoration with invalid transparent Color.

GrapchisContext::setPlatformStrokeColor() sets color to its platform GraphicsContext.

If color is invalid, it does nothing in the Qt imeplementation.
However, it just sets invalid transparent color in CoreGraphics and Skia implementation.

I don't know which implementation is correct.
However, paintDecoration() should not use RGB of invalid Color.
It or getTextDecorationColors() should set valid color to underline, overline and linethrough.

-- 
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the webkit-unassigned mailing list