Title: [121337] trunk
Revision
121337
Author
[email protected]
Date
2012-06-27 04:35:06 -0700 (Wed, 27 Jun 2012)

Log Message

Unexpected end of style sheet in @font-face rule discards it rather than closes all open constructs
https://bugs.webkit.org/show_bug.cgi?id=89980

Reviewed by Antti Koivisto.

Source/WebCore:

Use the "closing_brace" at the end of font_face rather than the explicit "'}' maybe_space".

Test: fast/css/font-face-unexpected-end.html

* css/CSSGrammar.y:

LayoutTests:

* fast/css/font-face-unexpected-end-expected.html: Added.
* fast/css/font-face-unexpected-end.html: Added.

Modified Paths

Added Paths

Diff

Modified: trunk/LayoutTests/ChangeLog (121336 => 121337)


--- trunk/LayoutTests/ChangeLog	2012-06-27 11:30:42 UTC (rev 121336)
+++ trunk/LayoutTests/ChangeLog	2012-06-27 11:35:06 UTC (rev 121337)
@@ -1,3 +1,13 @@
+2012-06-27  Alexander Pavlov  <[email protected]>
+
+        Unexpected end of style sheet in @font-face rule discards it rather than closes all open constructs
+        https://bugs.webkit.org/show_bug.cgi?id=89980
+
+        Reviewed by Antti Koivisto.
+
+        * fast/css/font-face-unexpected-end-expected.html: Added.
+        * fast/css/font-face-unexpected-end.html: Added.
+
 2012-06-27  Zoltan Arvai  <[email protected]>
 
         [Qt] Unreviewed gardening, rebaseline after r121303.

Added: trunk/LayoutTests/fast/css/font-face-unexpected-end-expected.html (0 => 121337)


--- trunk/LayoutTests/fast/css/font-face-unexpected-end-expected.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/font-face-unexpected-end-expected.html	2012-06-27 11:35:06 UTC (rev 121337)
@@ -0,0 +1,14 @@
+<style>
+    @font-face {
+        font-family: ahem-family;
+        src: url(../../resources/Ahem.otf);
+    }
+</style>
+<p>
+    Test for <i><a href="" Unexpected end of style sheet in @font-face rule discards it rather than closes all open constructs</i>.
+</p>
+<p>Check if a @font-face rule without a closing brace is accepted.</p>
+<span style="font-family: ahem-family">0123456789ABCDEF</span>
+<script>
+    document.body.offsetTop;
+</script>

Added: trunk/LayoutTests/fast/css/font-face-unexpected-end.html (0 => 121337)


--- trunk/LayoutTests/fast/css/font-face-unexpected-end.html	                        (rev 0)
+++ trunk/LayoutTests/fast/css/font-face-unexpected-end.html	2012-06-27 11:35:06 UTC (rev 121337)
@@ -0,0 +1,14 @@
+<style>
+    @font-face {
+        font-family: ahem-family;
+        src: url(../../resources/Ahem.otf);
+    /* The @font-face rule has no closing brace, so the style sheet is terminated unexpectedly. */
+</style>
+<p>
+    Test for <i><a href="" Unexpected end of style sheet in @font-face rule discards it rather than closes all open constructs</i>.
+</p>
+<p>Check if a @font-face rule without a closing brace is accepted.</p>
+<span style="font-family: ahem-family">0123456789ABCDEF</span>
+<script>
+    document.body.offsetTop;
+</script>

Modified: trunk/Source/WebCore/ChangeLog (121336 => 121337)


--- trunk/Source/WebCore/ChangeLog	2012-06-27 11:30:42 UTC (rev 121336)
+++ trunk/Source/WebCore/ChangeLog	2012-06-27 11:35:06 UTC (rev 121337)
@@ -1,3 +1,16 @@
+2012-06-27  Alexander Pavlov  <[email protected]>
+
+        Unexpected end of style sheet in @font-face rule discards it rather than closes all open constructs
+        https://bugs.webkit.org/show_bug.cgi?id=89980
+
+        Reviewed by Antti Koivisto.
+
+        Use the "closing_brace" at the end of font_face rather than the explicit "'}' maybe_space".
+
+        Test: fast/css/font-face-unexpected-end.html
+
+        * css/CSSGrammar.y:
+
 2012-06-26  Tor Arne Vestbø  <[email protected]>
 
         [Qt] Add missing heades to HEADERS

Modified: trunk/Source/WebCore/css/CSSGrammar.y (121336 => 121337)


--- trunk/Source/WebCore/css/CSSGrammar.y	2012-06-27 11:30:42 UTC (rev 121336)
+++ trunk/Source/WebCore/css/CSSGrammar.y	2012-06-27 11:35:06 UTC (rev 121337)
@@ -101,7 +101,7 @@
 
 %}
 
-%expect 63
+%expect 62
 
 %nonassoc LOWEST_PREC
 
@@ -789,7 +789,7 @@
 
 font_face:
     FONT_FACE_SYM maybe_space
-    '{' maybe_space declaration_list '}'  maybe_space {
+    '{' maybe_space declaration_list closing_brace {
         $$ = static_cast<CSSParser*>(parser)->createFontFaceRule();
     }
     | FONT_FACE_SYM error invalid_block {
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to