Bug 211574 - [hi/ml/si_LK] cursor naviation is wrong when using ZWJ (200d)
[hi/ml/si_LK] cursor naviation is wrong when using ZWJ (200d)
Product: Red Hat Enterprise Linux 5
Classification: Red Hat
Component: pango (Show other bugs)
All Linux
medium Severity medium
: ---
: ---
Assigned To: Behdad Esfahbod
David Lawrence
: i18n
: 213646 (view as bug list)
Depends On:
  Show dependency treegraph
Reported: 2006-10-20 02:58 EDT by A S Alam
Modified: 2013-07-02 20:40 EDT (History)
4 users (show)

See Also:
Fixed In Version: 5.0.0
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Last Closed: 2006-12-20 07:28:19 EST
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---

Attachments (Terms of Use)
ZWJ problem with character cutting from middle (5.83 KB, image/png)
2006-10-20 02:58 EDT, A S Alam
no flags Details
reference patch (646 bytes, patch)
2006-10-24 05:20 EDT, Akira TAGOH
no flags Details | Diff
proposed patch (2.06 KB, patch)
2006-10-26 09:45 EDT, Akira TAGOH
no flags Details | Diff
my patch (3.28 KB, patch)
2006-11-20 05:38 EST, Liang Zhang
no flags Details | Diff
the srcRPM for testing (1.17 MB, application/x-rpm)
2006-11-28 21:10 EST, Liang Zhang
no flags Details
hi_IN-ZWJ Error (41.81 KB, image/png)
2006-12-04 05:06 EST, Satyabrata Maitra
no flags Details
ml_IN-ZWJ Error (43.37 KB, image/png)
2006-12-04 05:07 EST, Satyabrata Maitra
no flags Details
si_LK ZWJ Error (44.02 KB, image/png)
2006-12-04 05:08 EST, Satyabrata Maitra
no flags Details
pango test RPM (330.66 KB, application/x-rpm)
2006-12-05 01:16 EST, Lawrence Lim
no flags Details

  None (edit)
Description A S Alam 2006-10-20 02:58:23 EDT
Description of problem:
when 200d is used with Halant (hi - 094d, ml -0d4d, then moving cursor to left
cut the
character by half

Version-Release number of selected component (if applicable):

How reproducible:
Everytime using ZWJ

Steps to Reproduce:
1. Open gedit and select keyboard hindi Inscript
2.  type  mo (type ZWJ) dY
3. move curor 2 times left
Actual results:
Cursor is blinking in between a character

Expected results:
Cursor should be at end of character

Additional info:
Screenshot is attaced
Comment 1 A S Alam 2006-10-20 02:58:23 EDT
Created attachment 138943 [details]
ZWJ problem with character cutting from middle
Comment 2 Akira TAGOH 2006-10-20 10:20:59 EDT
I guess it needs to be add one more step between 2 and 3 like

2.5. move the cursor to the beginning of line

And also guessing the above combinations of characters has to be treated as two
character, right?

So where is the boundary of those characters then?

BTW can you provide a testcase for Malayalam as well?
Comment 3 A S Alam 2006-10-23 09:08:57 EDT
Step 2.5.  can be added or without that also it can work.

these should treat as 4 characters (actually 3 characters and 1 halant)
position of cursor should be at end of 2nd character (DA) after moving cursor to
2 steps from Begining of line (Left).
Comment 4 Akira TAGOH 2006-10-23 09:54:22 EDT
I meant in the cursor movement perspective. if it should be treated as 4
characters, I don't see any issues then. the cursor position is at the end of
2nd character after pressing the right key 2 times from the beginning of line.
but 2nd character is transformed by ZWJ. and the cursor position is at the end
of line with more 2 times. so currently those is exactly treated as 4 characters.
Comment 5 Behdad Esfahbod 2006-10-23 14:29:24 EDT
Filed upstream:


Akira, can you write a patch for it?
Comment 6 A S Alam 2006-10-24 04:32:11 EDT
Position should be like:
Sr. -------Key (english)-------Character------Word   ----Cursor Position
0    -------     NONE  -------                NONE ------- NONE  ----NONE
1     -------    m   -------              स       -------  स ----1
2   -------     o-------           द     -------   सद ---- 2
3   -------  ZWJ   ------- ‍   -------  सद‍---- 2
4  ------- d      ------- ् --------सद‍्---- 2
5  ------- Y --------- भ  ------------सद‍्भ----3
may my comment #3 confuse regarding 4 characters, it seems it should be like  3
Comment 7 Akira TAGOH 2006-10-24 05:18:12 EDT
Ok, understood. thanks for clarifying this. so I suppose the patch I wrote when
I saw this bug report should works though, can you then provide a testcase for
Malayalam, please?
Comment 8 Akira TAGOH 2006-10-24 05:20:09 EDT
Created attachment 139205 [details]
reference patch
Comment 9 Behdad Esfahbod 2006-10-24 12:46:37 EDT
(In reply to comment #8)
> Created an attachment (id=139205) [edit]
> reference patch

So, is this the patch you recommend?
Comment 10 RHEL Product and Program Management 2006-10-24 15:32:41 EDT
This request was evaluated by Red Hat Product Management for inclusion in a Red
Hat Enterprise Linux major release.  Product Management has requested further
review of this request by Red Hat Engineering, for potential inclusion in a Red
Hat Enterprise Linux Major release.  This request is not yet committed for
Comment 11 Akira TAGOH 2006-10-25 10:12:13 EDT
(In reply to comment #9)
> (In reply to comment #8)
> > Created an attachment (id=139205) [edit] [edit]
> > reference patch
> So, is this the patch you recommend?

I've confirmed that patch working for Hindi. but need to test it for Malayalam.
I'm waiting for giving me a testcase for it. aalam?
Comment 12 A S Alam 2006-10-26 09:03:00 EDT
Tagoh, I m sorry, but this problem is existing in all indic locale, where Halant
 (VIRAMA) is used.


Sinhala need to confirm with LM, let you know tomorrow
Comment 13 Akira TAGOH 2006-10-26 09:45:52 EDT
Created attachment 139460 [details]
proposed patch

Ok, this patch should works. please provide the whole testcase.
Comment 17 A S Alam 2006-11-07 07:11:28 EST
Akira it is not working for me in above give example.
Comment 18 Akira TAGOH 2006-11-07 08:34:07 EST
Does "not working" mean you still see the same behavior? on Pango applied the
above patch, it works for me as you mentioned at comment #6.  Are you sure that
you were running on Pango with the above patch?

Or it's "not working" on anything else?
Comment 19 A S Alam 2006-11-08 06:45:23 EST
yes, I run rpm from your given link
yes,  "not working" mean still see the same behavior
Comment 20 Akira TAGOH 2006-11-08 22:15:33 EST
Hmm, actually I can see the different behavior between 1.14.6-3.el5 and my
testing package though. I need someone else to double-check this.
Comment 21 Akira TAGOH 2006-11-13 04:07:48 EST
It may be unlikely but if you use x86_64 and just install my i386 testing
package, you won't see a difference. you have to rebuild srpm on your box and
install x86_64 binary for x86_64 box. or install gedit.i386.rpm if you are
testing on gedit say.
Comment 22 Liang Zhang 2006-11-20 05:38:06 EST
Created attachment 141641 [details]
my patch

I wrote a patch for the bugs of moving cursor about Cons+ZWJ(or ZWNJ),
Cons+ZWJ(or ZWNJ)+Cons, Cons+ZWJ(or ZWNJ)+halant, Cons+ZWJ(or
ZWNJ)+halant+Cons, Cons+halant+ZWJ(or ZWNJ), Cons+halant+ZWJ(or ZWNJ)+Cons.
This patch can fix bug213646 too.
I think it can fix all bugs about moving cursor about ZWJ and ZWNJ.
Comment 23 Lawrence Lim 2006-11-27 23:14:22 EST
LingNing, any test rpm for this bug??
Comment 24 Leon Ho 2006-11-28 20:39:37 EST
*** Bug 213646 has been marked as a duplicate of this bug. ***
Comment 25 Liang Zhang 2006-11-28 21:10:05 EST
Created attachment 142355 [details]
the srcRPM for testing
Comment 26 Behdad Esfahbod 2006-12-01 11:17:01 EST
Can someone test and confirm that LingNing's patch works?
Comment 27 Liang Zhang 2006-12-04 01:15:43 EST
aalam, could you please test the patch?
Thank you very much!
Comment 28 Satyabrata Maitra 2006-12-04 05:06:49 EST
Created attachment 142716 [details]
hi_IN-ZWJ Error
Comment 29 Satyabrata Maitra 2006-12-04 05:07:48 EST
Created attachment 142717 [details]
ml_IN-ZWJ Error
Comment 30 Satyabrata Maitra 2006-12-04 05:08:28 EST
Created attachment 142718 [details]
si_LK ZWJ Error
Comment 31 Satyabrata Maitra 2006-12-04 05:18:27 EST
Hello LingNing

As I do not have setup for devel buildrpm to generate rpm from the srcrpm
attached, I found the same version pango-1.14.8-1.el5.i386.rpm in URL :
http://porkchop.redhat.com/brewroot/packages/pango/1.14.8/1.el5/i386, and tested
this bug.

Please inform if this rpm is not same as your srcrpm, and if not the same, may I
please request you to attach the rpm of that srcrpm with this bug, thus i can
retest it.

However the test result is...

Bug is not fixed, typing ZWJ - U200D is causing the cursor appearing middle of
the composed char for all 3 mentioned locales. Scrshots attached above for all 3
locales, above this comment.
Comment 32 Liang Zhang 2006-12-04 20:40:52 EST
Hi Satyabrata,
The patch for this bug has not been in pango-1.14.8-1.el5.i386.rpm, it has not
been received, so the patch need you to test.
The patch was in the srcRPM which was attached, you can build this srcRPM, and
test the patch.
Thanks a lot! 
Comment 33 Lawrence Lim 2006-12-05 01:16:17 EST
Created attachment 142806 [details]
pango test RPM

Test RPM attached.
Comment 34 Satyabrata Maitra 2006-12-05 03:08:00 EST
Tested the bug with test RPM attached. The bug has been fixed. Cursor nevigation
for all 12 Indic Locales are showing OK using this RPM.

Version of Test RPM installed : pango-1.14.8-1.i386.rpm
Comment 35 Liang Zhang 2006-12-08 00:55:53 EST
Behdad, did you read the comments?
Comment 36 Behdad Esfahbod 2006-12-08 12:23:36 EST
Ah, I wish I had read the comment yesterday and included the patch in the release.
Comment 37 Behdad Esfahbod 2006-12-08 16:29:23 EST
Committed upstream.  Is this an exception?  Do you want me to patch pango in rhel-5?
Comment 38 Liang Zhang 2006-12-10 20:32:17 EST
yes, please patch it in rhel-5, this bug is a blocker in rhel-5.
Comment 39 Behdad Esfahbod 2006-12-12 15:50:07 EST
Comment 40 Satyabrata Maitra 2006-12-20 06:46:49 EST
Retested the bug.
Cursor Nevigation is now OK with the latest package available mention below.

Component Version Tested :

Package is available in the tree :

So, resolving the bug for now.

Note You need to log in before you can comment on or make changes to this bug.