Title: [239516] trunk
Revision
239516
Author
[email protected]
Date
2018-12-21 13:33:03 -0800 (Fri, 21 Dec 2018)

Log Message

CSS variables don't work for colors in "border" property
https://bugs.webkit.org/show_bug.cgi?id=192922

Reviewed by Simon Fraser.

Source/WebCore:

ParseColorFunction no longer consumes anything if the color was not valid.

Test: css-custom-properties-api/border-variable-parsing.html

* css/parser/CSSPropertyParserHelpers.cpp:
(WebCore::CSSPropertyParserHelpers::parseColorFunction):

LayoutTests:

* css-custom-properties-api/border-variable-parsing-expected.html: Added.
* css-custom-properties-api/border-variable-parsing.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (239515 => 239516)


--- trunk/LayoutTests/ChangeLog	2018-12-21 20:46:03 UTC (rev 239515)
+++ trunk/LayoutTests/ChangeLog	2018-12-21 21:33:03 UTC (rev 239516)
@@ -1,3 +1,13 @@
+2018-12-21  Justin Michaud  <[email protected]>
+
+        CSS variables don't work for colors in "border" property
+        https://bugs.webkit.org/show_bug.cgi?id=192922
+
+        Reviewed by Simon Fraser.
+
+        * css-custom-properties-api/border-variable-parsing-expected.html: Added.
+        * css-custom-properties-api/border-variable-parsing.html: Added.
+
 2018-12-21  Zalan Bujtas  <[email protected]>
 
         Synchronous media query evaluation could destroy current Frame/FrameView.

Added: trunk/LayoutTests/css-custom-properties-api/border-variable-parsing-expected.html (0 => 239516)


--- trunk/LayoutTests/css-custom-properties-api/border-variable-parsing-expected.html	                        (rev 0)
+++ trunk/LayoutTests/css-custom-properties-api/border-variable-parsing-expected.html	2018-12-21 21:33:03 UTC (rev 239516)
@@ -0,0 +1,16 @@
+<style>
+#el1 {
+    --foreground: 100;
+    border: 30px dashed rgb(100, 0, 100);
+}
+#el2 {
+    --foreground: 100;
+    border: 30px rgb(100, 0, 100) dashed;
+}
+div {
+    width: 150px;
+    height: 150px;
+}
+</style>
+<div id="el1"></div>
+<div id="el2"></div>

Added: trunk/LayoutTests/css-custom-properties-api/border-variable-parsing.html (0 => 239516)


--- trunk/LayoutTests/css-custom-properties-api/border-variable-parsing.html	                        (rev 0)
+++ trunk/LayoutTests/css-custom-properties-api/border-variable-parsing.html	2018-12-21 21:33:03 UTC (rev 239516)
@@ -0,0 +1,16 @@
+<style>
+#el1 {
+    --foreground: 100;
+    border: 30px dashed rgb(100, 0, var(--foreground));
+}
+#el2 {
+    --foreground: 100;
+    border: 30px rgb(100, 0, var(--foreground)) dashed;
+}
+div {
+    width: 150px;
+    height: 150px;
+}
+</style>
+<div id="el1"></div>
+<div id="el2"></div>

Modified: trunk/Source/WebCore/ChangeLog (239515 => 239516)


--- trunk/Source/WebCore/ChangeLog	2018-12-21 20:46:03 UTC (rev 239515)
+++ trunk/Source/WebCore/ChangeLog	2018-12-21 21:33:03 UTC (rev 239516)
@@ -1,3 +1,17 @@
+2018-12-21  Justin Michaud  <[email protected]>
+
+        CSS variables don't work for colors in "border" property
+        https://bugs.webkit.org/show_bug.cgi?id=192922
+
+        Reviewed by Simon Fraser.
+
+        ParseColorFunction no longer consumes anything if the color was not valid.
+
+        Test: css-custom-properties-api/border-variable-parsing.html
+
+        * css/parser/CSSPropertyParserHelpers.cpp:
+        (WebCore::CSSPropertyParserHelpers::parseColorFunction):
+
 2018-12-21  Justin Fan  <[email protected]>
 
         [WebGPU] GPUBindGroupLayout refactoring: no HashMap, and failure logging

Modified: trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp (239515 => 239516)


--- trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp	2018-12-21 20:46:03 UTC (rev 239515)
+++ trunk/Source/WebCore/css/parser/CSSPropertyParserHelpers.cpp	2018-12-21 21:33:03 UTC (rev 239516)
@@ -681,7 +681,8 @@
     default:
         return Color();
     }
-    range = colorRange;
+    if (color.isValid())
+        range = colorRange;
     return color;
 }
 
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes

Reply via email to