[SCM] WebKit Debian packaging branch, webkit-1.1, updated. upstream/1.1.21-584-g1e41756

yuzo at google.com yuzo at google.com
Fri Feb 26 22:15:37 UTC 2010


The following commit has been merged in the webkit-1.1 branch:
commit bef5207d2b054d8c58418beae7f1421cc81633f1
Author: yuzo at google.com <yuzo at google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Tue Feb 9 09:16:36 2010 +0000

    2010-02-07  Yuzo Fujishima  <yuzo at google.com>
    
            Reviewed by Dan Bernstein.
    
            Fix the following bugs:
            https://bugs.webkit.org/show_bug.cgi?id=18926 - dt:after generate a line break. Boost documentation page renders poorly
            https://bugs.webkit.org/show_bug.cgi?id=7276 - Most W3C padding related tests fail
    
            css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.html and css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.html have been rebaselined
            because the original expected values are incorrect, judging from the test description and how IE 8.0, Firefox 3.6, and Opera 10.10 render the pages.
            fast/dom/clone-node-dynamic-style-expected.html have been also rebaselined because the original expected values assumes a line break.
            Expected values under platform/qt need not be updated because the tests are in the Skipped file for the platform.
    
            * fast/css/inline-element-line-break.html: Added.
            * fast/css/pseudo-element-line-break.html: Added.
            * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.checksum:
            * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png:
            * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.txt:
            * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.checksum:
            * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png:
            * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.txt:
            * platform/mac/fast/css/inline-element-line-break-expected.checksum: Added.
            * platform/mac/fast/css/inline-element-line-break-expected.png: Added.
            * platform/mac/fast/css/inline-element-line-break-expected.txt: Added.
            * platform/mac/fast/css/pseudo-element-line-break-expected.checksum: Added.
            * platform/mac/fast/css/pseudo-element-line-break-expected.png: Added.
            * platform/mac/fast/css/pseudo-element-line-break-expected.txt: Added.
            * platform/mac/fast/dom/clone-node-dynamic-style-expected.checksum:
            * platform/mac/fast/dom/clone-node-dynamic-style-expected.png:
            * platform/mac/fast/dom/clone-node-dynamic-style-expected.txt:
    2010-02-07  Yuzo Fujishima  <yuzo at google.com>
    
            Reviewed by Dan Bernstein.
    
            Fix the following bugs:
            https://bugs.webkit.org/show_bug.cgi?id=18926 - dt:after generate a line break. Boost documentation page renders poorly
            https://bugs.webkit.org/show_bug.cgi?id=7276 - Most W3C padding related tests fail
    
            Tests: fast/css/inline-element-line-break.html
                   fast/css/pseudo-element-line-break.html
    
            findNextLineBreak() unconditionally allowed lines to break between elements when no other line breaking opportunity had been found,
            but that was unnecessary and led to incorrect layout. Disallow that kind of line breaks.
    
            * rendering/RenderBlockLineLayout.cpp:
            (WebCore::RenderBlock::findNextLineBreak):
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@54536 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 0a1cddd..37afc2f 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,34 @@
+2010-02-07  Yuzo Fujishima  <yuzo at google.com>
+
+        Reviewed by Dan Bernstein.
+
+        Fix the following bugs:
+        https://bugs.webkit.org/show_bug.cgi?id=18926 - dt:after generate a line break. Boost documentation page renders poorly
+        https://bugs.webkit.org/show_bug.cgi?id=7276 - Most W3C padding related tests fail
+
+        css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.html and css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.html have been rebaselined
+        because the original expected values are incorrect, judging from the test description and how IE 8.0, Firefox 3.6, and Opera 10.10 render the pages.
+        fast/dom/clone-node-dynamic-style-expected.html have been also rebaselined because the original expected values assumes a line break.
+        Expected values under platform/qt need not be updated because the tests are in the Skipped file for the platform.
+
+        * fast/css/inline-element-line-break.html: Added.
+        * fast/css/pseudo-element-line-break.html: Added.
+        * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.checksum:
+        * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png:
+        * platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.txt:
+        * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.checksum:
+        * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png:
+        * platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.txt:
+        * platform/mac/fast/css/inline-element-line-break-expected.checksum: Added.
+        * platform/mac/fast/css/inline-element-line-break-expected.png: Added.
+        * platform/mac/fast/css/inline-element-line-break-expected.txt: Added.
+        * platform/mac/fast/css/pseudo-element-line-break-expected.checksum: Added.
+        * platform/mac/fast/css/pseudo-element-line-break-expected.png: Added.
+        * platform/mac/fast/css/pseudo-element-line-break-expected.txt: Added.
+        * platform/mac/fast/dom/clone-node-dynamic-style-expected.checksum:
+        * platform/mac/fast/dom/clone-node-dynamic-style-expected.png:
+        * platform/mac/fast/dom/clone-node-dynamic-style-expected.txt:
+
 2010-02-09  Avi Drissman  <avi at chromium.org>
 
         Reviewed by David Levin.
diff --git a/LayoutTests/fast/css/inline-element-line-break.html b/LayoutTests/fast/css/inline-element-line-break.html
new file mode 100755
index 0000000..73c8e94
--- /dev/null
+++ b/LayoutTests/fast/css/inline-element-line-break.html
@@ -0,0 +1,45 @@
+<html>
+<head>
+<style type="text/css">
+p {
+  border:medium solid blue;
+  width: 5em;
+}
+
+p.a:before{
+  content: "AAAAAAAAA";
+}
+
+p.ab:before{
+  content: "AAAA BBBB";
+}
+
+p.az:before{
+  content: "AAAAAAAAA";
+}
+p.az:after{
+  content: "ZZZZZZZZZ";
+}
+
+p.yz:after{
+  content: "YYYY ZZZZ";
+}
+
+p.z:after{
+  content: "ZZZZZZZZZ";
+}
+</style>
+</head>
+
+<body>
+<!-- line break must not occur at pseudo element (:before, :after) boundaries. -->
+<p><span>AAAAAAAAA</span>AA BB</p>
+<p><span>AAAAAAAAA</span>AAAAA</p>
+<p><span>AAAA</span> <span>BBBB</span>BBBBB</p>
+<p><span>AAAAAAAAA</span>AA ZZ<span>ZZZZZZZZZ</span></p>
+<p><span>AAAAAAAAA</span>MMMMM<span>ZZZZZZZZZ</span></p>
+<p>YYYYY<span>YYYY</span> <span>ZZZZ</span></p>
+<p>YY ZZ<span>ZZZZZZZZZ</span></p>
+<p>ZZZZZ<span>ZZZZZZZZZ</span></p>
+</html>
+
diff --git a/LayoutTests/fast/css/pseudo-element-line-break.html b/LayoutTests/fast/css/pseudo-element-line-break.html
new file mode 100755
index 0000000..885f306
--- /dev/null
+++ b/LayoutTests/fast/css/pseudo-element-line-break.html
@@ -0,0 +1,45 @@
+<html>
+<head>
+<style type="text/css">
+p {
+  border:medium solid blue;
+  width: 5em;
+}
+
+p.a:before{
+  content: "AAAAAAAAA";
+}
+
+p.ab:before{
+  content: "AAAA BBBB";
+}
+
+p.az:before{
+  content: "AAAAAAAAA";
+}
+p.az:after{
+  content: "ZZZZZZZZZ";
+}
+
+p.yz:after{
+  content: "YYYY ZZZZ";
+}
+
+p.z:after{
+  content: "ZZZZZZZZZ";
+}
+</style>
+</head>
+
+<body>
+<!-- line break must not occur at pseudo element (:before, :after) boundaries. -->
+<p class="a">AA BB</p>
+<p class="a">AAAAA</p>
+<p class="ab">BBBBB</p>
+<p class="az">AA ZZ</p>
+<p class="az">MMMMM</p>
+<p class="yz">YYYYY</p>
+<p class="z">YY ZZ</p>
+<p class="z">ZZZZZ</p>
+</html>
+
diff --git a/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.checksum b/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.checksum
index b0c645c..f32bc98 100644
--- a/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.checksum
+++ b/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.checksum
@@ -1 +1 @@
-9b380eea177552acd80bb610071d6434
\ No newline at end of file
+e8c79031e275259171fdca5f1232e144
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png b/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png
index 86f97c5..d42a632 100644
Binary files a/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png and b/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.png differ
diff --git a/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.txt b/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.txt
index bbb5775..b01093c 100644
--- a/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.txt
+++ b/LayoutTests/platform/mac/css2.1/t0803-c5504-imrgn-l-02-b-ag-expected.txt
@@ -1,18 +1,18 @@
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
-layer at (0,0) size 800x125
-  RenderBlock {HTML} at (0,0) size 800x125
-    RenderBody {BODY} at (8,16) size 784x94
+layer at (0,0) size 800x110
+  RenderBlock {HTML} at (0,0) size 800x110
+    RenderBody {BODY} at (8,16) size 784x79
       RenderBlock {P} at (0,0) size 784x18
         RenderText {#text} at (0,0) size 313x18
           text run at (0,0) width 313: "There should be a small light green square below:"
-      RenderBlock {DIV} at (15,34) size 754x60
-        RenderBlock {P} at (0,0) size 75x60 [color=#FFFFFF]
+      RenderBlock {DIV} at (15,34) size 754x45
+        RenderBlock {P} at (0,0) size 75x45 [color=#FFFFFF]
           RenderText {#text} at (0,0) size 30x30
             text run at (0,0) width 30: "xx"
             text run at (0,15) width 30: "xx"
           RenderInline {SPAN} at (0,0) size 15x15 [color=#00FF00] [bgcolor=#FF0000]
-            RenderText {#text} at (60,30) size 15x15
-              text run at (60,30) width 15: "x"
-          RenderText {#text} at (0,45) size 75x15
-            text run at (0,45) width 75: "xx xx"
+            RenderText {#text} at (90,15) size 15x15
+              text run at (90,15) width 15: "x"
+          RenderText {#text} at (0,30) size 75x15
+            text run at (0,30) width 75: "xx xx"
diff --git a/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.checksum b/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.checksum
index b0c645c..f32bc98 100644
--- a/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.checksum
+++ b/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.checksum
@@ -1 +1 @@
-9b380eea177552acd80bb610071d6434
\ No newline at end of file
+e8c79031e275259171fdca5f1232e144
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png b/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png
index 86f97c5..d42a632 100644
Binary files a/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png and b/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.png differ
diff --git a/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.txt b/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.txt
index 1a40baa..aa565a9 100644
--- a/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.txt
+++ b/LayoutTests/platform/mac/css2.1/t0804-c5509-ipadn-l-02-b-ag-expected.txt
@@ -1,18 +1,18 @@
 layer at (0,0) size 800x600
   RenderView at (0,0) size 800x600
-layer at (0,0) size 800x125
-  RenderBlock {HTML} at (0,0) size 800x125
-    RenderBody {BODY} at (8,16) size 784x94
+layer at (0,0) size 800x110
+  RenderBlock {HTML} at (0,0) size 800x110
+    RenderBody {BODY} at (8,16) size 784x79
       RenderBlock {P} at (0,0) size 784x18
         RenderText {#text} at (0,0) size 313x18
           text run at (0,0) width 313: "There should be a small light green square below:"
-      RenderBlock {DIV} at (15,34) size 754x60
-        RenderBlock {P} at (0,0) size 75x60 [color=#FFFFFF]
+      RenderBlock {DIV} at (15,34) size 754x45
+        RenderBlock {P} at (0,0) size 75x45 [color=#FFFFFF]
           RenderText {#text} at (0,0) size 30x30
             text run at (0,0) width 30: "xx"
             text run at (0,15) width 30: "xx"
           RenderInline {SPAN} at (0,0) size 75x15 [color=#00FF00]
-            RenderText {#text} at (60,30) size 15x15
-              text run at (60,30) width 15: "x"
-          RenderText {#text} at (0,45) size 75x15
-            text run at (0,45) width 75: "xx xx"
+            RenderText {#text} at (90,15) size 15x15
+              text run at (90,15) width 15: "x"
+          RenderText {#text} at (0,30) size 75x15
+            text run at (0,30) width 75: "xx xx"
diff --git a/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.checksum b/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.checksum
new file mode 100644
index 0000000..37abe3f
--- /dev/null
+++ b/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.checksum
@@ -0,0 +1 @@
+52e3e2e8f1b2fb36e35bb9b121750b6f
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.png b/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.png
new file mode 100644
index 0000000..43ffe1c
Binary files /dev/null and b/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.txt b/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.txt
new file mode 100644
index 0000000..02f9433
--- /dev/null
+++ b/LayoutTests/platform/mac/fast/css/inline-element-line-break-expected.txt
@@ -0,0 +1,70 @@
+layer at (0,0) size 800x600
+  RenderView 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 {P} at (0,0) size 86x42 [border: (3px solid #0000FF)]
+        RenderInline {SPAN} at (0,0) size 108x18
+          RenderText {#text} at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 132x36
+          text run at (111,3) width 24: "AA"
+          text run at (3,21) width 22: "BB"
+      RenderBlock {P} at (0,58) size 86x24 [border: (3px solid #0000FF)]
+        RenderInline {SPAN} at (0,0) size 108x18
+          RenderText {#text} at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 60x18
+          text run at (111,3) width 60: "AAAAA"
+      RenderBlock {P} at (0,98) size 86x42 [border: (3px solid #0000FF)]
+        RenderInline {SPAN} at (0,0) size 48x18
+          RenderText {#text} at (3,3) size 48x18
+            text run at (3,3) width 48: "AAAA"
+        RenderText {#text} at (0,0) size 0x0
+        RenderInline {SPAN} at (0,0) size 44x18
+          RenderText {#text} at (3,21) size 44x18
+            text run at (3,21) width 44: "BBBB"
+        RenderText {#text} at (47,21) size 55x18
+          text run at (47,21) width 55: "BBBBB"
+      RenderBlock {P} at (0,156) size 86x42 [border: (3px solid #0000FF)]
+        RenderInline {SPAN} at (0,0) size 108x18
+          RenderText {#text} at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 132x36
+          text run at (111,3) width 24: "AA"
+          text run at (3,21) width 20: "ZZ"
+        RenderInline {SPAN} at (0,0) size 90x18
+          RenderText {#text} at (23,21) size 90x18
+            text run at (23,21) width 90: "ZZZZZZZZZ"
+      RenderBlock {P} at (0,214) size 86x24 [border: (3px solid #0000FF)]
+        RenderInline {SPAN} at (0,0) size 108x18
+          RenderText {#text} at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 70x18
+          text run at (111,3) width 70: "MMMMM"
+        RenderInline {SPAN} at (0,0) size 90x18
+          RenderText {#text} at (181,3) size 90x18
+            text run at (181,3) width 90: "ZZZZZZZZZ"
+      RenderBlock {P} at (0,254) size 86x42 [border: (3px solid #0000FF)]
+        RenderText {#text} at (3,3) size 60x18
+          text run at (3,3) width 60: "YYYYY"
+        RenderInline {SPAN} at (0,0) size 48x18
+          RenderText {#text} at (63,3) size 48x18
+            text run at (63,3) width 48: "YYYY"
+        RenderText {#text} at (0,0) size 0x0
+        RenderInline {SPAN} at (0,0) size 40x18
+          RenderText {#text} at (3,21) size 40x18
+            text run at (3,21) width 40: "ZZZZ"
+      RenderBlock {P} at (0,312) size 86x42 [border: (3px solid #0000FF)]
+        RenderText {#text} at (3,3) size 24x36
+          text run at (3,3) width 24: "YY"
+          text run at (3,21) width 20: "ZZ"
+        RenderInline {SPAN} at (0,0) size 90x18
+          RenderText {#text} at (23,21) size 90x18
+            text run at (23,21) width 90: "ZZZZZZZZZ"
+      RenderBlock {P} at (0,370) size 86x24 [border: (3px solid #0000FF)]
+        RenderText {#text} at (3,3) size 50x18
+          text run at (3,3) width 50: "ZZZZZ"
+        RenderInline {SPAN} at (0,0) size 90x18
+          RenderText {#text} at (53,3) size 90x18
+            text run at (53,3) width 90: "ZZZZZZZZZ"
diff --git a/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.checksum b/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.checksum
new file mode 100644
index 0000000..37abe3f
--- /dev/null
+++ b/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.checksum
@@ -0,0 +1 @@
+52e3e2e8f1b2fb36e35bb9b121750b6f
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.png b/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.png
new file mode 100644
index 0000000..43ffe1c
Binary files /dev/null and b/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.txt b/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.txt
new file mode 100644
index 0000000..6ae41f8
--- /dev/null
+++ b/LayoutTests/platform/mac/fast/css/pseudo-element-line-break-expected.txt
@@ -0,0 +1,64 @@
+layer at (0,0) size 800x600
+  RenderView 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 {P} at (0,0) size 86x42 [border: (3px solid #0000FF)]
+        RenderInline (generated) at (0,0) size 108x18
+          RenderText at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 132x36
+          text run at (111,3) width 24: "AA"
+          text run at (3,21) width 22: "BB"
+      RenderBlock {P} at (0,58) size 86x24 [border: (3px solid #0000FF)]
+        RenderInline (generated) at (0,0) size 108x18
+          RenderText at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 60x18
+          text run at (111,3) width 60: "AAAAA"
+      RenderBlock {P} at (0,98) size 86x42 [border: (3px solid #0000FF)]
+        RenderInline (generated) at (0,0) size 48x36
+          RenderText at (3,3) size 48x36
+            text run at (3,3) width 48: "AAAA"
+            text run at (3,21) width 44: "BBBB"
+        RenderText {#text} at (47,21) size 55x18
+          text run at (47,21) width 55: "BBBBB"
+      RenderBlock {P} at (0,156) size 86x42 [border: (3px solid #0000FF)]
+        RenderInline (generated) at (0,0) size 108x18
+          RenderText at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 132x36
+          text run at (111,3) width 24: "AA"
+          text run at (3,21) width 20: "ZZ"
+        RenderInline (generated) at (0,0) size 90x18
+          RenderText at (23,21) size 90x18
+            text run at (23,21) width 90: "ZZZZZZZZZ"
+      RenderBlock {P} at (0,214) size 86x24 [border: (3px solid #0000FF)]
+        RenderInline (generated) at (0,0) size 108x18
+          RenderText at (3,3) size 108x18
+            text run at (3,3) width 108: "AAAAAAAAA"
+        RenderText {#text} at (111,3) size 70x18
+          text run at (111,3) width 70: "MMMMM"
+        RenderInline (generated) at (0,0) size 90x18
+          RenderText at (181,3) size 90x18
+            text run at (181,3) width 90: "ZZZZZZZZZ"
+      RenderBlock {P} at (0,254) size 86x42 [border: (3px solid #0000FF)]
+        RenderText {#text} at (3,3) size 60x18
+          text run at (3,3) width 60: "YYYYY"
+        RenderInline (generated) at (0,0) size 108x36
+          RenderText at (63,3) size 108x36
+            text run at (63,3) width 48: "YYYY"
+            text run at (3,21) width 40: "ZZZZ"
+      RenderBlock {P} at (0,312) size 86x42 [border: (3px solid #0000FF)]
+        RenderText {#text} at (3,3) size 24x36
+          text run at (3,3) width 24: "YY"
+          text run at (3,21) width 20: "ZZ"
+        RenderInline (generated) at (0,0) size 90x18
+          RenderText at (23,21) size 90x18
+            text run at (23,21) width 90: "ZZZZZZZZZ"
+      RenderBlock {P} at (0,370) size 86x24 [border: (3px solid #0000FF)]
+        RenderText {#text} at (3,3) size 50x18
+          text run at (3,3) width 50: "ZZZZZ"
+        RenderInline (generated) at (0,0) size 90x18
+          RenderText at (53,3) size 90x18
+            text run at (53,3) width 90: "ZZZZZZZZZ"
diff --git a/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.checksum b/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.checksum
index 42c5175..97603a6 100644
--- a/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.checksum
+++ b/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.checksum
@@ -1 +1 @@
-1e5b0de6598cbfc4d28634c8a683a0b5
\ No newline at end of file
+56e71a9e9e102b316f725da95e673d58
\ No newline at end of file
diff --git a/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.png b/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.png
index 7b5c249..fb8968b 100644
Binary files a/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.png and b/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.png differ
diff --git a/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.txt b/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.txt
index 6626056..16689f4 100644
--- a/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.txt
+++ b/LayoutTests/platform/mac/fast/dom/clone-node-dynamic-style-expected.txt
@@ -1,13 +1,13 @@
-layer at (0,0) size 800x600
-  RenderView at (0,0) size 800x600
-layer at (0,0) size 800x600
-  RenderBlock {HTML} at (0,0) size 800x600
-    RenderBody {BODY} at (8,8) size 784x584
+layer at (0,0) size 838x585
+  RenderView at (0,0) size 800x585
+layer at (0,0) size 838x585
+  RenderBlock {HTML} at (0,0) size 800x585
+    RenderBody {BODY} at (8,8) size 784x569
       RenderBlock {H1} at (0,0) size 784x37
         RenderText {#text} at (0,0) size 195x37
           text run at (0,0) width 195: "Cloning nodes"
-      RenderBlock {DIV} at (0,58) size 784x76 [bgcolor=#FFFF00] [border: (2px ridge #000000)]
-        RenderInline {SPAN} at (0,0) size 768x72
+      RenderBlock {DIV} at (0,58) size 784x40 [bgcolor=#FFFF00] [border: (2px ridge #000000)]
+        RenderInline {SPAN} at (0,0) size 828x36
           RenderText {#text} at (2,2) size 60x36
             text run at (2,2) width 60: "Bold"
           RenderInline {SPAN} at (0,0) size 708x36
@@ -18,19 +18,19 @@ layer at (0,0) size 800x600
                 text run at (267,2) width 281: "Bold+Underline+Italic"
             RenderText {#text} at (548,2) size 222x36
               text run at (548,2) width 222: "Bold+Uunderline"
-          RenderText {#text} at (2,38) size 60x36
-            text run at (2,38) width 60: "Bold"
+          RenderText {#text} at (770,2) size 60x36
+            text run at (770,2) width 60: "Bold"
         RenderText {#text} at (0,0) size 0x0
-      RenderBlock (anonymous) at (0,134) size 784x18
+      RenderBlock (anonymous) at (0,98) size 784x18
         RenderText {#text} at (0,0) size 189x18
           text run at (0,0) width 189: "Cloned Node with deep=false"
-      RenderBlock {DIV} at (0,152) size 784x40 [bgcolor=#FFFF00] [border: (2px ridge #000000)]
+      RenderBlock {DIV} at (0,116) size 784x40 [bgcolor=#FFFF00] [border: (2px ridge #000000)]
         RenderBR {BR} at (2,2) size 0x36
-      RenderBlock (anonymous) at (0,192) size 784x18
+      RenderBlock (anonymous) at (0,156) size 784x18
         RenderText {#text} at (0,0) size 184x18
           text run at (0,0) width 184: "Cloned Node with deep=true"
-      RenderBlock {DIV} at (0,210) size 784x76 [bgcolor=#FFFF00] [border: (2px ridge #000000)]
-        RenderInline {SPAN} at (0,0) size 768x72
+      RenderBlock {DIV} at (0,174) size 784x40 [bgcolor=#FFFF00] [border: (2px ridge #000000)]
+        RenderInline {SPAN} at (0,0) size 828x36
           RenderText {#text} at (2,2) size 60x36
             text run at (2,2) width 60: "Bold"
           RenderInline {SPAN} at (0,0) size 708x36
@@ -41,6 +41,6 @@ layer at (0,0) size 800x600
                 text run at (267,2) width 281: "Bold+Underline+Italic"
             RenderText {#text} at (548,2) size 222x36
               text run at (548,2) width 222: "Bold+Uunderline"
-          RenderText {#text} at (2,38) size 60x36
-            text run at (2,38) width 60: "Bold"
+          RenderText {#text} at (770,2) size 60x36
+            text run at (770,2) width 60: "Bold"
         RenderText {#text} at (0,0) size 0x0
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 538ca7b..a73fba6 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,20 @@
+2010-02-07  Yuzo Fujishima  <yuzo at google.com>
+
+        Reviewed by Dan Bernstein.
+
+        Fix the following bugs:
+        https://bugs.webkit.org/show_bug.cgi?id=18926 - dt:after generate a line break. Boost documentation page renders poorly
+        https://bugs.webkit.org/show_bug.cgi?id=7276 - Most W3C padding related tests fail
+
+        Tests: fast/css/inline-element-line-break.html
+               fast/css/pseudo-element-line-break.html
+
+        findNextLineBreak() unconditionally allowed lines to break between elements when no other line breaking opportunity had been found,
+        but that was unnecessary and led to incorrect layout. Disallow that kind of line breaks.
+
+        * rendering/RenderBlockLineLayout.cpp:
+        (WebCore::RenderBlock::findNextLineBreak):
+
 2010-02-09  Shinichiro Hamaji  <hamaji at chromium.org>
 
         Reviewed by Darin Adler.
diff --git a/WebCore/rendering/RenderBlockLineLayout.cpp b/WebCore/rendering/RenderBlockLineLayout.cpp
index 2d1dc8c..8a1e1c9 100644
--- a/WebCore/rendering/RenderBlockLineLayout.cpp
+++ b/WebCore/rendering/RenderBlockLineLayout.cpp
@@ -2158,19 +2158,12 @@ InlineIterator RenderBlock::findNextLineBreak(InlineBidiResolver& resolver, bool
                 lBreak.nextBreakablePosition = -1;
             }
         } else if (lBreak.obj) {
-            if (last != o && !last->isListMarker()) {
-                // better to break between object boundaries than in the middle of a word (except for list markers)
-                lBreak.obj = o;
-                lBreak.pos = 0;
-                lBreak.nextBreakablePosition = -1;
-            } else {
-                // Don't ever break in the middle of a word if we can help it.
-                // There's no room at all. We just have to be on this line,
-                // even though we'll spill out.
-                lBreak.obj = o;
-                lBreak.pos = pos;
-                lBreak.nextBreakablePosition = -1;
-            }
+            // Don't ever break in the middle of a word if we can help it.
+            // There's no room at all. We just have to be on this line,
+            // even though we'll spill out.
+            lBreak.obj = o;
+            lBreak.pos = pos;
+            lBreak.nextBreakablePosition = -1;
         }
     }
 

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list