Title: [209783] trunk/Source/WebCore
Revision
209783
Author
[email protected]
Date
2016-12-13 16:18:17 -0800 (Tue, 13 Dec 2016)

Log Message

[CSS Parser] Enhance fast path translate transforms to allow percentages
https://bugs.webkit.org/show_bug.cgi?id=165822

Reviewed by Simon Fraser.

* css/parser/CSSParserFastPaths.cpp:
(WebCore::parseTransformTranslateArguments):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (209782 => 209783)


--- trunk/Source/WebCore/ChangeLog	2016-12-13 23:37:15 UTC (rev 209782)
+++ trunk/Source/WebCore/ChangeLog	2016-12-14 00:18:17 UTC (rev 209783)
@@ -1,3 +1,13 @@
+2016-12-13  Dave Hyatt  <[email protected]>
+
+        [CSS Parser] Enhance fast path translate transforms to allow percentages
+        https://bugs.webkit.org/show_bug.cgi?id=165822
+
+        Reviewed by Simon Fraser.
+
+        * css/parser/CSSParserFastPaths.cpp:
+        (WebCore::parseTransformTranslateArguments):
+
 2016-12-13  Ryosuke Niwa  <[email protected]>
 
         :hover rule causes a single tap to not activate a slotted anchor element

Modified: trunk/Source/WebCore/css/parser/CSSParserFastPaths.cpp (209782 => 209783)


--- trunk/Source/WebCore/css/parser/CSSParserFastPaths.cpp	2016-12-13 23:37:15 UTC (rev 209782)
+++ trunk/Source/WebCore/css/parser/CSSParserFastPaths.cpp	2016-12-14 00:18:17 UTC (rev 209783)
@@ -1063,9 +1063,11 @@
         double number;
         if (!parseSimpleLength(pos, argumentLength, unit, number))
             return false;
-        if (unit != CSSPrimitiveValue::UnitType::CSS_PX && (number || unit != CSSPrimitiveValue::UnitType::CSS_NUMBER))
+        if (!number && unit == CSSPrimitiveValue::CSS_NUMBER)
+            unit = CSSPrimitiveValue::UnitType::CSS_PX;
+        if (unit == CSSPrimitiveValue::UnitType::CSS_NUMBER || (unit == CSSPrimitiveValue::UnitType::CSS_PERCENTAGE && (transformValue->operationType() == WebKitCSSTransformValue::TranslateZTransformOperation || (transformValue->operationType() == WebKitCSSTransformValue::Translate3DTransformOperation && expectedCount == 1))))
             return false;
-        transformValue->append(CSSPrimitiveValue::create(number, CSSPrimitiveValue::UnitType::CSS_PX));
+        transformValue->append(CSSPrimitiveValue::create(number, unit));
         pos += argumentLength + 1;
         --expectedCount;
     }
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to