Fix for 4096681, fix regression in how the list-style property is parsed. It no...
authorhyatt <hyatt@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 22 Apr 2005 18:12:16 +0000 (18:12 +0000)
committerhyatt <hyatt@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 22 Apr 2005 18:12:16 +0000 (18:12 +0000)
a url in the property value list now, because the list pointer did not get advanced.  This fixes alistapart.com.

        Reviewed by john

        * khtml/css/cssparser.cpp:
        (CSSParser::parseValue):
        * layout-tests/fast/lists/009-expected.txt: Added.
        * layout-tests/fast/lists/009.html: Added.
        * layout-tests/fast/lists/resources/listmark.gif: Added.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@9040 268f45cc-cd09-0410-ab3c-d52691b4dbfc

LayoutTests/fast/lists/009-expected.txt [new file with mode: 0644]
LayoutTests/fast/lists/009.html [new file with mode: 0644]
LayoutTests/fast/lists/resources/listmark.gif [new file with mode: 0644]
WebCore/ChangeLog-2005-08-23
WebCore/khtml/css/cssparser.cpp

diff --git a/LayoutTests/fast/lists/009-expected.txt b/LayoutTests/fast/lists/009-expected.txt
new file mode 100644 (file)
index 0000000..e58f21b
--- /dev/null
@@ -0,0 +1,16 @@
+layer at (0,0) size 800x600
+  RenderCanvas at (0,0) size 800x600
+layer at (0,0) size 800x600
+  RenderBlock {HTML} at (0,0) size 800x600
+    RenderBody {BODY} at (8,8) size 784x576
+      RenderBlock {DIV} at (0,0) size 784x52
+        RenderBlock {DL} at (0,0) size 784x52
+          RenderBlock {DT} at (0,0) size 784x18
+            RenderText {TEXT} at (0,0) size 153x18
+              text run at (0,0) width 153: "DT text is rendered here"
+          RenderBlock {DD} at (0,34) size 784x18
+            RenderBlock {UL} at (0,0) size 784x18
+              RenderListItem {LI} at (0,0) size 784x18
+                RenderListMarker at (0,5) size 19x9
+                RenderText {TEXT} at (19,0) size 111x18
+                  text run at (19,0) width 111: "LI text is here too"
diff --git a/LayoutTests/fast/lists/009.html b/LayoutTests/fast/lists/009.html
new file mode 100644 (file)
index 0000000..5c88394
--- /dev/null
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+    <title>A List Apart</title>
+
+<style type="text/css">
+
+
+#subnav ul     {
+       
+       padding: 0;
+       
+       }
+       
+#subnav ul li  {
+       list-style: disc url(http://www.alistapart.com/i/listmark.gif) inside;
+       
+       }       
+
+#subnav dd     {
+       margin: 0;
+       }       
+
+</style>
+
+
+
+</head>
+
+<body>
+
+
+
+<div id="subnav">
+
+<dl>
+<dt>DT text is rendered here</dt>
+<dd>
+<ul>
+<li>LI text is here too</li>
+
+</ul>
+</dd>
+</dl>
+
+
+
+
+
+</div>
+
+</body>
+</html>
\ No newline at end of file
diff --git a/LayoutTests/fast/lists/resources/listmark.gif b/LayoutTests/fast/lists/resources/listmark.gif
new file mode 100644 (file)
index 0000000..c37cd26
Binary files /dev/null and b/LayoutTests/fast/lists/resources/listmark.gif differ
index fef2a0ec948c63126c3112c2d215455d772dccb5..2029e97b28b9c796fd4a453b30e167199d84d7b2 100644 (file)
@@ -1,3 +1,16 @@
+2005-04-22  David Hyatt  <hyatt@apple.com>
+
+       Fix for 4096681, fix regression in how the list-style property is parsed.  It no longer parses when it hits
+       a url in the property value list now, because the list pointer did not get advanced.  This fixes alistapart.com.
+       
+        Reviewed by john
+
+        * khtml/css/cssparser.cpp:
+        (CSSParser::parseValue):
+        * layout-tests/fast/lists/009-expected.txt: Added.
+        * layout-tests/fast/lists/009.html: Added.
+        * layout-tests/fast/lists/resources/listmark.gif: Added.
+
 2005-04-22  Darin Adler  <darin@apple.com>
 
         Reviewed by John.
index 1b03a02e84573b508e450deb87f8f572e347e15f..d0987171efd2dc189d5527bad37dc5d08b0c0669 100644 (file)
@@ -723,6 +723,7 @@ bool CSSParser::parseValue( int propId, bool important )
                parsedValue = new CSSImageValueImpl(
                    DOMString(KURL( styleElement->baseURL().string(), uri.string()).url()),
                    styleElement);
+                valueList->next();
            }
        }
         break;