New issue
Advanced search Search tips

Issue 893995 link

Starred by 1 user

Issue metadata

Status: Available
Owner: ----
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug



Sign in to add a comment

BiDi Isolates not supported on Linux

Reported by egm...@gmail.com, Oct 10

Issue description

UserAgent: Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:62.0) Gecko/20100101 Firefox/62.0

Example URL:
see attached files

Steps to reproduce the problem:
Please open one of the attached files. The txt and html are equivalent.

The first two entries use the old-fashioned (pre-Unicode 6.3) way of embedding foreign directionality text: RLE..PDF for simple embedding or RLO..PDF for override, followed by LRM to restore the containing paragraph's directionality. This LRM trick guarantees that the Farsi and Hebrew words of the examples are handled as two separate right-to-left runs, not as a single one.

The next two entries use the new (Unicode 6.3, 2013) preferred way of embedding: isolates, RLI..PDI. There's no need for the LRM trick there.

What is the expected behavior?
1 and 3 should be rendered identically: with the Farsi word on the left, and the Hebrew word on the right, such as (demonstrating here with LTR letters only):

3. abc ISRAF WERBEH jkl

2 and 4 should be rendered identically: with the "forced fake RTL" words "def" and "ghi" reversed individually, that is:

4. abc fed ihg jkl

What went wrong?
1 and 2 are rendered as expected.

3 and 4 are rendered incorrectly.

3 is a total mess. Not only are the Farsi and Hebrew words reversed as a single run (rather than separately as expected), but the bullet point 3 is also moved to the middle, and "abc" is also unexpectedly reversed:

WERBEH ISRAF cba .3 jkl

In 4 the two "forced fake RTL" words are reversed as a single run, rather than two independent runs:

4. abc ihg fed jkl

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: 69.0.3497.100 (Official Build) Built on Ubuntu , running on Ubuntu 18.10 (64-bit)  Channel: beta
OS Version: Ubuntu 18.10
Flash Version: Shockwave Flash 31.0 r0

Support for isolates is supposed to be implemented in  bug 242238 .

The attached examples show up as expected in at least Firefox, LibreOffice Writer, pango-view, gedit.

Note that I'm on Ubuntu Cosmic 18.10, one week before its release, already in feature freeze. I don't expect final 18.10 to bring any change here.

Ubuntu 18.10 is the first Ubuntu shipping fribidi-1.0 which adds support for isolates. In Bionic 18.04 not all of the aforementioned software worked correctly, due to using an older fribidi-0.19.x not yet supporting isolates.

I cannot test Chrome on non-Linux systems, cannot tell whether this bug is Linux specific.
 
bidi-test.txt
191 bytes View Download
bidi-test.html
440 bytes View Download
Components: -Blink Blink>Layout
Status: Available (was: Unconfirmed)
Confirming, and over to layout. Is this maybe something that's fixed by layoutNG by chance?

Sign in to add a comment