Title: [105866] trunk
Revision
105866
Author
[email protected]
Date
2012-01-25 04:32:48 -0800 (Wed, 25 Jan 2012)

Log Message

fast/text/unicode-variation-selector.html doesn't pass on Lion
https://bugs.webkit.org/show_bug.cgi?id=76041

Source/WebCore:

Reviewed by Dan Bernstein.

Consumes non-BMP marks in advanceByCombiningCharacterSequence() to take into
account Ideographic variation selectors (these are non-BMP marks).

No new tests. fast/text/unicode-variation-selector.html should pass on Lion.

* platform/graphics/mac/ComplexTextController.cpp:
(WebCore::advanceByCombiningCharacterSequence): Use Unicode code point
to iterate the loop which consumes marks.

LayoutTests:

Update the UVS test font to be CoreText-friendly. This updated font is provided by Apple.

Reviewed by Dan Bernstein.

* fast/text/resources/gw432047.ttf:

Modified Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (105865 => 105866)


--- trunk/LayoutTests/ChangeLog	2012-01-25 12:25:42 UTC (rev 105865)
+++ trunk/LayoutTests/ChangeLog	2012-01-25 12:32:48 UTC (rev 105866)
@@ -1,3 +1,14 @@
+2012-01-25  Kenichi Ishibashi  <[email protected]>
+
+        fast/text/unicode-variation-selector.html doesn't pass on Lion
+        https://bugs.webkit.org/show_bug.cgi?id=76041
+
+        Update the UVS test font to be CoreText-friendly. This updated font is provided by Apple.
+
+        Reviewed by Dan Bernstein.
+
+        * fast/text/resources/gw432047.ttf:
+
 2012-01-25  Noel Gordon  <[email protected]>
 
         [chromium] fast/css/text-overflow-input.html rebaseline

Modified: trunk/LayoutTests/fast/text/resources/gw432047.ttf (105865 => 105866)


--- trunk/LayoutTests/fast/text/resources/gw432047.ttf	2012-01-25 12:25:42 UTC (rev 105865)
+++ trunk/LayoutTests/fast/text/resources/gw432047.ttf	2012-01-25 12:32:48 UTC (rev 105866)
@@ -2,7 +2,7 @@
 \xA5	\xC7\xF4\x99\xCC\x8F\x99\xCC\xEB3		
 PfEd@ \xFF\xFFp\xFFp\eO"2,,,N,4l\xB8\xEA4
 l8
- N\x84[\xE0\xFF\xFF N\x84[\xE0\xFF\xFF\xFF\xE3\xB2{\xAA L  NN\x84[\x84[\xE0\xE0\x9F\x9F2 )\x84[	\x84[\xB0,\xB0K\xB0*PX\xB0JvY\xB0#?\xB0+X=YK\xB0*PX}Y ԰.-\xB0,  \xDA/\xB0+\X  G#Faj X db8!!Y!Y-\xB0,KRXE#Y!-\xB0,i \xB0@PX!\xB0@Y-\xB0,\xB0+X!#!zX\xDD\xCDYKRXX\xFD\xEDY#!\xB0+X\xB0FvYX\xDD\xCDYYY-\xB0,
+ N\x84[\xE0\xFF\xFF N\x84[\xE0\xFF\xFF\xFF\xE3\xB2{\xAA L  NN\x84[\x84[\xE0\xE0\x9F\x9F2Z Z)\x84[	\x84[\xB0,\xB0K\xB0*PX\xB0JvY\xB0#?\xB0+X=YK\xB0*PX}Y ԰.-\xB0,  \xDA/\xB0+\X  G#Faj X db8!!Y!Y-\xB0,KRXE#Y!-\xB0,i \xB0@PX!\xB0@Y-\xB0,\xB0+X!#!zX\xDD\xCDYKRXX\xFD\xEDY#!\xB0+X\xB0FvYX\xDD\xCDYYY-\xB0,
 \Z-\xB0,\xB1"\x88PX\xB0 \x88\\\xB0Y-\xB0,\xB1$\x88PX\xB0@\x88\\\xB0Y-\xB0, 9/-\xB8\xFF\x85K\xB0PX\xB1\x8EY\xB1F+X!\xB0YK\xB0RX!\xB0\x80Y\xB0+\XY$\xFC\xD0\xA8\xFE\xD2"2\xAA3!'3#"\xEE\xCC\xCC\xAA\xFDV"f2\x9C\xCE\xE77!5X6@\xFCd\xB166,\xFF\xB1\xD4e\x86\x8A\xA4%7/'?!'?#!75!'!7#5'53?'!!5!37%5!37!5#5!5!535f*
 "%!0'	:'$
 0\xFEB@(*-LE=K@@\xC4 ;A\xFE\xB6\xDE ;

Modified: trunk/Source/WebCore/ChangeLog (105865 => 105866)


--- trunk/Source/WebCore/ChangeLog	2012-01-25 12:25:42 UTC (rev 105865)
+++ trunk/Source/WebCore/ChangeLog	2012-01-25 12:32:48 UTC (rev 105866)
@@ -1,3 +1,19 @@
+2012-01-25  Kenichi Ishibashi  <[email protected]>
+
+        fast/text/unicode-variation-selector.html doesn't pass on Lion
+        https://bugs.webkit.org/show_bug.cgi?id=76041
+
+        Reviewed by Dan Bernstein.
+
+        Consumes non-BMP marks in advanceByCombiningCharacterSequence() to take into
+        account Ideographic variation selectors (these are non-BMP marks).
+
+        No new tests. fast/text/unicode-variation-selector.html should pass on Lion.
+
+        * platform/graphics/mac/ComplexTextController.cpp:
+        (WebCore::advanceByCombiningCharacterSequence): Use Unicode code point
+        to iterate the loop which consumes marks.
+
 2012-01-25  Ilya Tikhonovsky  <[email protected]>
 
         Web Inspector: DetailedHeapSnapshot: adjust node name cell format for the retainers tree.

Modified: trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.cpp (105865 => 105866)


--- trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.cpp	2012-01-25 12:25:42 UTC (rev 105865)
+++ trunk/Source/WebCore/platform/graphics/mac/ComplexTextController.cpp	2012-01-25 12:32:48 UTC (rev 105866)
@@ -204,9 +204,14 @@
     }
 
     // Consume marks.
-    while (iterator < end && ((U_GET_GC_MASK(*iterator) & U_GC_M_MASK) || *iterator == zeroWidthJoiner || *iterator == zeroWidthNonJoiner)) {
-        iterator++;
-        markCount++;
+    while (iterator < end) {
+        UChar32 nextCharacter;
+        int markLength = 0;
+        U16_NEXT(iterator, markLength, end - iterator, nextCharacter);
+        if (!(U_GET_GC_MASK(nextCharacter) & U_GC_M_MASK) && nextCharacter != zeroWidthJoiner && nextCharacter != zeroWidthNonJoiner)
+            break;
+        markCount += markLength;
+        iterator += markLength;
     }
 
     return true;
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to