Bug 3633

Summary: Layout order of bidi level runs is incorrect
Product: WebKit Reporter: mitz
Component: Layout and RenderingAssignee: Darin Adler <darin>
Status: CLOSED FIXED    
Severity: Normal CC: bugs.mano
Priority: P2    
Version: 412   
Hardware: Mac   
OS: OS X 10.4   
Attachments:
Description Flags
testcase
none
Proposed fix
darin: review+
Proposed fix darin: review+

mitz
Reported 2005-06-21 05:38:37 PDT
[Note: this issue was previously covered by bug 3599 ]. Summary: The final layout order of text runs with different bidi embedding levels is incorrect. To Reproduce: See testcase. Expected/Actual: Testcase includes a description of expected rendering. Firefox renders as expected. WebKit renders the first (leftmost) box as expected, the second and third boxes are broken in different ways. Analysis: bidiReorderLine ()'s implementation of rule L2 of the Unicode bidi algorithm is broken for lines where the embedding levels aren't unimodal (the index variable is advancing too fast).
Attachments
testcase (663 bytes, text/html)
2005-06-21 05:41 PDT, mitz
no flags
Proposed fix (523 bytes, patch)
2005-06-21 05:55 PDT, mitz
darin: review+
Proposed fix (534 bytes, patch)
2005-06-21 10:21 PDT, mitz
darin: review+
mitz
Comment 1 2005-06-21 05:41:26 PDT
Created attachment 2530 [details] testcase
mitz
Comment 2 2005-06-21 05:55:31 PDT
Created attachment 2531 [details] Proposed fix
Darin Adler
Comment 3 2005-06-21 08:47:50 PDT
Comment on attachment 2531 [details] Proposed fix Patch looks fine. Clearly we should remove the bogus if statement too, since it does the same thing the while loop already does. This test case will work as a layout test too, which is great. r=me
mitz
Comment 4 2005-06-21 10:21:56 PDT
Created attachment 2535 [details] Proposed fix Removed the unnecessary if statement.
Note You need to log in before you can comment on or make changes to this bug.