New issue
Advanced search Search tips

Issue 677681 link

Starred by 2 users

Issue metadata

Status: Duplicate
Merged: issue 591346
Owner:
Closed: Jan 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux , Windows , Mac
Pri: 2
Type: Bug-Regression



Sign in to add a comment

Character with combining diacritical mark rendered as two black boxes

Reported by zmwa...@gmail.com, Dec 31 2016

Issue description

UserAgent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/55.0.2883.95 Safari/537.36

Example URL:
https://cdn.rawgit.com/zmwangx/128b5563c3447c636649983c0027163d/raw/c94c875a90b0ed68cebe9a297121ded82b2a2d2d/chrome-diacritical-mark.html

Steps to reproduce the problem:
Put two characters TIBETAN LETTER KA (U+0F40) and COMBINING DOUBLE BREVE (U+035D) together, like this: ཀ͝.

Here's a test page https://cdn.rawgit.com/zmwangx/128b5563c3447c636649983c0027163d/raw/c94c875a90b0ed68cebe9a297121ded82b2a2d2d/chrome-diacritical-mark.html, which contains the following HTML:

    <!DOCTYPE html>
    <html>
      <head>
        <title>Test TIBETAN LETTER KA and COMBINING DOUBLE BREVE</title>
        <style>body { font-family: "Arial Unicode MS", Arial, sans-serif; }</style>
      </head>
      <body>
        <p>TIBETAN LETTER KA: &#xf40;</p>
        <p>COMBINING DOUBLE BREVE: &#x35d;</p>
        <p>LATIN CAPITAL LETTER A with COMBINING DOUBLE BREVE: &#x700;&#x35d;</p>
        <p>TIBETAN LETTER KA with COMBINING DOUBLE BREVE: &#xf40;&#x35d;</p>
      </body>
    </html>

What is the expected behavior?
Two characters combined and rendered correctly, which should look like a tearing eye with a downward bending eyebrow (in fact, this is part of a kaomoji in some user generated content).

What went wrong?
The characters are rendered as two black boxes. See attached screenshot chrome.png.

Does it occur on multiple sites: Yes

Is it a problem with a plugin? No 

Did this work before? N/A 

Does this work in other browsers? Yes

Chrome version: 55.0.2883.95  Channel: stable
OS Version: OS X 10.12.2
Flash Version: Shockwave Flash 24.0 r0

This seems to happen (at least in the dozens of cases I tested) with code points above U+0700 combined with a combining diacritical mark above U+0346.

I also tested in Safari 10.0.2 and Firefox Developer Editor 52.0a2 (2016-12-30). See screenshots firefox.png and safari.png. Safari renders correctly; Firefox doesn't combine corrected, but at least the individual characters are shown, which is better than Chrome's double boxes IMO.
 
chrome.png
45.5 KB View Download
firefox.png
44.1 KB View Download
safari.png
45.4 KB View Download

Comment 1 by zmwa...@gmail.com, Dec 31 2016

Sorry, I realized my test page is slightly different from advertised... But it demonstrates the problem just fine. Here's the corrected URL: https://rawgit.com/zmwangx/ce0f441b7f5ca7e1cecb89d0105f3827/raw/341beada40fcba7cc8a2f4ecda203ff4870bad8b/chrome-diacritical-mark.html.

Comment 2 by junov@chromium.org, Jan 2 2017

Components: -Blink Blink>Fonts
Cc: kkaluri@chromium.org
Labels: M-57 hasbisect OS-Linux OS-Windows
Owner: drott@chromium.org
Status: Assigned (was: Unconfirmed)
Able to reproduce this issue on Windows 10, Ubuntu 14.04  with chrome version 55.0.2883.87 and Mac 10.12.2 on chrome stable version 55.0.2883.95 and also in current canary version #57.0.2964.0
Issue is broken in M48.

Bisect Info:
===========
Good build : 48.0.2544.0,  Revision Range -355679
Bad build  : 48.0.2545.0,  Revision Range -355918

After executing the bisect(old) script , i got the following CL's between good and bad build versions
===========================================
https://chromium.googlesource.com/chromium/src/+log/36b19501d8bcf869a36f3c8e983ed1ec477f3529..6d939d13f77b157797ff9691076bc3c69f4d96a2

The suspecting Change Log is :
-----------
https://chromium.googlesource.com/chromium/src/+/9f6a2b03ccb7091804f173b70b5facff7dffbd61

From the above CL suspecting the below change
---------------------------
https://codereview.chromium.org/1397423004

drott@- Could you please look into this issue, if it's related to your change?  if not could you please help us to reassign this issue to the right owner.

Labels: -Type-Bug -Pri-2 Pri-1 Type-Bug-Regression

Comment 5 by drott@chromium.org, Jan 2 2017

Labels: -Pri-1 Pri-2
Mergedinto: 591346
Status: Duplicate (was: Assigned)
The old rendering in the version 48 was combining marks from two different fonts, leading to something that was displayed, but incorrect. The combining mark came from a different font than the base character. This may appear okay in this case but is generally incorrect.

As a workaround for the above Tibetan example, try specifying a system font that supports Tibetan, or specify a webfont with a full Tibetan character set including combining marks.


Sign in to add a comment