[SCM] WebKit Debian packaging branch, debian/experimental, updated. upstream/1.3.3-9427-gc2be6fc

abarth at webkit.org abarth at webkit.org
Wed Dec 22 11:14:43 UTC 2010


The following commit has been merged in the debian/experimental branch:
commit 4c681b3ac30c36a5dccbc4d0c3d347267af61085
Author: abarth at webkit.org <abarth at webkit.org@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Thu Jul 15 22:17:07 2010 +0000

    2010-07-15  Eric Seidel  <eric at webkit.org>
    
            Reviewed by Adam Barth.
    
            LegacyHTMLTreeBuilder should insert an implicit <colgroup> before inserting <col> to match HTML5
            https://bugs.webkit.org/show_bug.cgi?id=42346
    
            This turned out to be an easy fix.
    
            This is covered by lots of layout tests.  I believe
            all of the changed results to be progressions.
    
            This change had no measurable effect on the parser benchmark.
    
            * html/LegacyHTMLTreeBuilder.cpp:
            (WebCore::LegacyHTMLTreeBuilder::colCreateErrorCheck):
            (WebCore::LegacyHTMLTreeBuilder::getNode):
            * html/LegacyHTMLTreeBuilder.h:
    2010-07-15  Eric Seidel  <eric at webkit.org>
    
            Reviewed by Adam Barth.
    
            LegacyHTMLTreeBuilder should insert an implicit <colgroup> before inserting <col> to match HTML5
            https://bugs.webkit.org/show_bug.cgi?id=42346
    
            I believe all of these changes to be progressions.
    
            * html5lib/runner-expected.txt:
            * platform/mac/fast/invalid/residual-style-expected.txt:
            * platform/mac/fast/repaint/table-col-background-expected.txt:
            * platform/mac/fast/table/border-collapsing/002-expected.txt:
            * platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
            * platform/mac/fast/table/cell-width-auto-expected.txt:
            * platform/mac/fast/table/colgroup-preceded-by-caption-expected.txt:
            * platform/mac/fast/table/fixed-granular-cols-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug100334-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug25367-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug29058-3-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug43039-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug43854-1-expected.txt:
            * platform/mac/tables/mozilla/bugs/bug7471-expected.txt:
            * platform/mac/tables/mozilla/core/misc-expected.txt:
            * platform/mac/tables/mozilla/dom/deleteCol1-expected.txt:
            * platform/mac/tables/mozilla/dom/deleteCol2-expected.txt:
            * platform/mac/tables/mozilla/dom/deleteCol3-expected.txt:
            * platform/mac/tables/mozilla/dom/insertCols1-expected.txt:
            * platform/mac/tables/mozilla/dom/insertCols2-expected.txt:
            * platform/mac/tables/mozilla/dom/insertCols3-expected.txt:
            * platform/mac/tables/mozilla/marvin/col_span-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.txt:
            * platform/mac/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@63472 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/LayoutTests/ChangeLog b/LayoutTests/ChangeLog
index 7a98c29..3b12a26 100644
--- a/LayoutTests/ChangeLog
+++ b/LayoutTests/ChangeLog
@@ -1,3 +1,46 @@
+2010-07-15  Eric Seidel  <eric at webkit.org>
+
+        Reviewed by Adam Barth.
+
+        LegacyHTMLTreeBuilder should insert an implicit <colgroup> before inserting <col> to match HTML5
+        https://bugs.webkit.org/show_bug.cgi?id=42346
+
+        I believe all of these changes to be progressions.
+
+        * html5lib/runner-expected.txt:
+        * platform/mac/fast/invalid/residual-style-expected.txt:
+        * platform/mac/fast/repaint/table-col-background-expected.txt:
+        * platform/mac/fast/table/border-collapsing/002-expected.txt:
+        * platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt:
+        * platform/mac/fast/table/cell-width-auto-expected.txt:
+        * platform/mac/fast/table/colgroup-preceded-by-caption-expected.txt:
+        * platform/mac/fast/table/fixed-granular-cols-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug100334-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug25367-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug29058-3-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug43039-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug43854-1-expected.txt:
+        * platform/mac/tables/mozilla/bugs/bug7471-expected.txt:
+        * platform/mac/tables/mozilla/core/misc-expected.txt:
+        * platform/mac/tables/mozilla/dom/deleteCol1-expected.txt:
+        * platform/mac/tables/mozilla/dom/deleteCol2-expected.txt:
+        * platform/mac/tables/mozilla/dom/deleteCol3-expected.txt:
+        * platform/mac/tables/mozilla/dom/insertCols1-expected.txt:
+        * platform/mac/tables/mozilla/dom/insertCols2-expected.txt:
+        * platform/mac/tables/mozilla/dom/insertCols3-expected.txt:
+        * platform/mac/tables/mozilla/marvin/col_span-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.txt:
+        * platform/mac/tables/mozilla_expected_failures/dom/appendCol1-expected.txt:
+
 2010-07-15  Adam Barth  <abarth at webkit.org>
 
         Reviewed by Darin Adler.
diff --git a/LayoutTests/html5lib/runner-expected.txt b/LayoutTests/html5lib/runner-expected.txt
index 105925c..2ed1da5 100644
--- a/LayoutTests/html5lib/runner-expected.txt
+++ b/LayoutTests/html5lib/runner-expected.txt
@@ -699,7 +699,8 @@ Got:
 |     <col>
 |     <col>
 |     <table>
-|       <col>
+|       <colgroup>
+|         <col>
 |       <tbody>
 |         <tr>
 |           <td>
@@ -4875,29 +4876,10 @@ Expected:
 |   <body>
 |     <form>
 resources/tables01.dat:
-3
 7
 8
 9
 
-Test 3 of 16 in resources/tables01.dat failed. Input:
-<table><col foo='bar'>
-Got:
-| <html>
-|   <head>
-|   <body>
-|     <table>
-|       <col>
-|         foo="bar"
-Expected:
-| <html>
-|   <head>
-|   <body>
-|     <table>
-|       <colgroup>
-|         <col>
-|           foo="bar"
-
 Test 7 of 16 in resources/tables01.dat failed. Input:
 <table><select><option>3</select></table>
 Got:
diff --git a/LayoutTests/platform/mac/fast/invalid/residual-style-expected.txt b/LayoutTests/platform/mac/fast/invalid/residual-style-expected.txt
index 33c3042..8f2edf8 100644
--- a/LayoutTests/platform/mac/fast/invalid/residual-style-expected.txt
+++ b/LayoutTests/platform/mac/fast/invalid/residual-style-expected.txt
@@ -187,7 +187,8 @@ layer at (0,0) size 785x3441
         RenderInline {FONT} at (0,0) size 175x18 [color=#008000]
           RenderInline {FONT} at (0,0) size 0x18 [color=#FF0000]
           RenderTable {TABLE} at (41,12) size 4x2
-            RenderTableCol {COL} at (0,0) size 0x0
+            RenderTableCol {COLGROUP} at (0,0) size 0x0
+              RenderTableCol {COL} at (0,0) size 0x0
             RenderTableSection {TBODY} at (0,0) size 4x2
           RenderText {#text} at (45,0) size 171x18
             text run at (45,0) width 171: "All of this should be green."
diff --git a/LayoutTests/platform/mac/fast/repaint/table-col-background-expected.txt b/LayoutTests/platform/mac/fast/repaint/table-col-background-expected.txt
index 9df25d4..ede5c4a 100644
--- a/LayoutTests/platform/mac/fast/repaint/table-col-background-expected.txt
+++ b/LayoutTests/platform/mac/fast/repaint/table-col-background-expected.txt
@@ -4,7 +4,8 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 106x104
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#008000]
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#008000]
         RenderTableSection {TBODY} at (0,0) size 106x104
           RenderTableRow {TR} at (0,2) size 106x100
             RenderTableCell {TD} at (2,51) size 102x2 [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/fast/table/border-collapsing/002-expected.txt b/LayoutTests/platform/mac/fast/table/border-collapsing/002-expected.txt
index eae04e3..8375261 100644
--- a/LayoutTests/platform/mac/fast/table/border-collapsing/002-expected.txt
+++ b/LayoutTests/platform/mac/fast/table/border-collapsing/002-expected.txt
@@ -5,9 +5,10 @@ layer at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x576
       RenderBlock {P} at (0,0) size 784x272
         RenderTable {TABLE} at (0,0) size 158x272 [border: (2px solid #FFFF00)]
-          RenderTableCol {COL} at (0,0) size 0x0 [border: (3px solid #000000)]
-          RenderTableCol {COL} at (0,0) size 0x0
-          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COLGROUP} at (0,0) size 0x0
+            RenderTableCol {COL} at (0,0) size 0x0 [border: (3px solid #000000)]
+            RenderTableCol {COL} at (0,0) size 0x0
+            RenderTableCol {COL} at (0,0) size 0x0
           RenderTableSection {TBODY} at (2,2) size 153x267
             RenderTableRow {TR} at (0,0) size 153x55
               RenderTableCell {TD} at (0,1) size 52x53 [border: (3px solid #FF0000)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt b/LayoutTests/platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt
index ee9c1a3..fe0c8d5 100644
--- a/LayoutTests/platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt
+++ b/LayoutTests/platform/mac/fast/table/border-collapsing/rtl-border-collapsing-expected.txt
@@ -31,10 +31,11 @@ layer at (0,0) size 800x600
           RenderTableRow {TR} at (0,26) size 133x48
             RenderTableCell {TD} at (0,26) size 67x48 [border: none (1px solid #000000) none] [r=1 c=0 rs=1 cs=1]
               RenderTable {TABLE} at (4,4) size 58x40 [border: none (1px solid #0000FF) none (1px solid #FF0000)]
-                RenderTableCol {COL} at (0,0) size 0x0
-                RenderTableCol {COL} at (0,0) size 0x0
-                RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FFFF00] [border: (2px dotted #008000) none (1px solid #000000)]
-                RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#C0C0C0]
+                RenderTableCol {COLGROUP} at (0,0) size 0x0
+                  RenderTableCol {COL} at (0,0) size 0x0
+                  RenderTableCol {COL} at (0,0) size 0x0
+                  RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FFFF00] [border: (2px dotted #008000) none (1px solid #000000)]
+                  RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#C0C0C0]
                 RenderTableSection {TBODY} at (1,0) size 56x40
                   RenderTableRow {TR} at (0,0) size 56x20
                     RenderTableCell {TD} at (44,0) size 12x20 [border: none] [r=0 c=0 rs=1 cs=1]
@@ -67,10 +68,11 @@ layer at (0,0) size 800x600
                         text run at (2,1) width 8 RTL: "  "
             RenderTableCell {TD} at (67,26) size 66x48 [r=1 c=1 rs=1 cs=1]
               RenderTable {TABLE} at (4,4) size 58x40 [border: none (1px solid #FF0000) none (1px solid #0000FF)]
-                RenderTableCol {COL} at (0,0) size 0x0
-                RenderTableCol {COL} at (0,0) size 0x0
-                RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FFFF00] [border: (1px solid #000000) none (2px dotted #008000)]
-                RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#C0C0C0]
+                RenderTableCol {COLGROUP} at (0,0) size 0x0
+                  RenderTableCol {COL} at (0,0) size 0x0
+                  RenderTableCol {COL} at (0,0) size 0x0
+                  RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FFFF00] [border: (1px solid #000000) none (2px dotted #008000)]
+                  RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#C0C0C0]
                 RenderTableSection {TBODY} at (1,0) size 56x40
                   RenderTableRow {TR} at (0,0) size 56x20
                     RenderTableCell {TD} at (0,0) size 12x20 [border: none] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/fast/table/cell-width-auto-expected.txt b/LayoutTests/platform/mac/fast/table/cell-width-auto-expected.txt
index d4b73ea..2e3fba0 100644
--- a/LayoutTests/platform/mac/fast/table/cell-width-auto-expected.txt
+++ b/LayoutTests/platform/mac/fast/table/cell-width-auto-expected.txt
@@ -11,8 +11,9 @@ layer at (0,0) size 800x478
           RenderText {#text} at (0,0) size 163x18
             text run at (0,0) width 163: "Table 1: width in <COL>"
         RenderTable {TABLE} at (0,68) size 256x168
-          RenderTableCol {COL} at (0,0) size 0x0
-          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COLGROUP} at (0,0) size 0x0
+            RenderTableCol {COL} at (0,0) size 0x0
+            RenderTableCol {COL} at (0,0) size 0x0
           RenderTableSection {TBODY} at (0,0) size 256x168
             RenderTableRow {TR} at (0,2) size 256x164
               RenderTableCell {TD} at (2,2) size 150x164 [bgcolor=#FFFF00] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/fast/table/colgroup-preceded-by-caption-expected.txt b/LayoutTests/platform/mac/fast/table/colgroup-preceded-by-caption-expected.txt
index 2eae4b8..d726460 100644
--- a/LayoutTests/platform/mac/fast/table/colgroup-preceded-by-caption-expected.txt
+++ b/LayoutTests/platform/mac/fast/table/colgroup-preceded-by-caption-expected.txt
@@ -8,7 +8,8 @@ layer at (0,0) size 800x136
           RenderText {#text} at (30,0) size 210x36
             text run at (30,0) width 210: "The next line should have yellow"
             text run at (96,18) width 79: "background."
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FFFF00]
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FFFF00]
         RenderTableSection {TBODY} at (0,36) size 271x24
           RenderTableRow {TR} at (0,2) size 271x20
             RenderTableCell {TD} at (2,2) size 267x20 [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/fast/table/fixed-granular-cols-expected.txt b/LayoutTests/platform/mac/fast/table/fixed-granular-cols-expected.txt
index 7ab9bc4..c6ed501 100644
--- a/LayoutTests/platform/mac/fast/table/fixed-granular-cols-expected.txt
+++ b/LayoutTests/platform/mac/fast/table/fixed-granular-cols-expected.txt
@@ -4,11 +4,12 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 200x50
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 200x50
           RenderTableRow {TR} at (0,0) size 200x50
             RenderTableCell {TD} at (0,24) size 10x2 [r=0 c=0 rs=1 cs=1]
@@ -16,9 +17,10 @@ layer at (0,0) size 800x600
             RenderTableCell {TD} at (110,24) size 90x2 [r=0 c=4 rs=1 cs=1]
             RenderTableCell {TD} at (200,24) size 0x2 [r=0 c=5 rs=1 cs=1]
       RenderTable {TABLE} at (0,50) size 200x50
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 200x50
           RenderTableRow {TR} at (0,0) size 200x50
             RenderTableCell {TD} at (0,24) size 10x2 [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug100334-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug100334-expected.txt
index db713aa..d680094 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug100334-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug100334-expected.txt
@@ -4,8 +4,9 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 150x18 [bgcolor=#FFCCCC]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 150x18
           RenderTableRow {TR} at (0,0) size 150x18
             RenderTableCell {TD} at (0,0) size 150x18 [r=0 c=0 rs=1 cs=2]
@@ -16,8 +17,9 @@ layer at (0,0) size 800x600
             RenderTableCell {TD} at (125,18) size 25x0 [r=1 c=1 rs=1 cs=1]
       RenderBlock {P} at (0,34) size 784x0
       RenderTable {TABLE} at (0,34) size 150x18 [bgcolor=#FFCCCC]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 150x18
           RenderTableRow {TR} at (0,0) size 150x18
             RenderTableCell {TD} at (0,0) size 150x18 [r=0 c=0 rs=1 cs=2]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt
index 1d57659..d9723cd 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-1-expected.txt
@@ -4,7 +4,8 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 784x24
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 784x24
           RenderTableRow {TR} at (0,2) size 784x20
             RenderTableCell {TD} at (2,2) size 258x20 [bgcolor=#00FFFF] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt
index 378d341..6c22c15 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug139524-4-expected.txt
@@ -4,8 +4,9 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 312x28 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 310x26
           RenderTableRow {TR} at (0,2) size 310x22
             RenderTableCell {TD} at (2,2) size 50x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug25367-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug25367-expected.txt
index a7698be..99d4def 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug25367-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug25367-expected.txt
@@ -4,7 +4,8 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 71x46
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 71x46
           RenderTableRow {TR} at (0,2) size 71x20
             RenderTableCell {TD} at (2,2) size 67x20 [r=0 c=0 rs=1 cs=2]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug29058-3-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug29058-3-expected.txt
index ce70ef5..00fc3c2 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug29058-3-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug29058-3-expected.txt
@@ -7,9 +7,10 @@ layer at (0,0) size 800x218
         RenderBlock {CAPTION} at (0,0) size 398x18
           RenderText {#text} at (46,0) size 306x18
             text run at (46,0) width 306: "Table is 400 px width, set with table width=400."
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,19) size 398x182
           RenderTableRow {TR} at (0,0) size 398x182
             RenderTableCell {TD} at (0,0) size 398x182 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=3]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug43039-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug43039-expected.txt
index 657a597..28ff7d3 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug43039-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug43039-expected.txt
@@ -4,14 +4,15 @@ layer at (0,0) size 16468x585
   RenderBlock {HTML} at (0,0) size 800x585
     RenderBody {BODY} at (8,8) size 784x569
       RenderTable {TABLE} at (0,0) size 16460x108
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 16460x108
           RenderTableRow {TR} at (0,0) size 16460x18
             RenderTableCell {TD} at (0,0) size 588x18 [r=0 c=0 rs=1 cs=8]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug43854-1-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug43854-1-expected.txt
index 6572ae9..44bc0d6 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug43854-1-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug43854-1-expected.txt
@@ -8,7 +8,8 @@ layer at (0,0) size 942x585
           RenderText {#text} at (0,0) size 285x18
             text run at (0,0) width 285: "All cell borders should look the same."
       RenderTable {TABLE} at (40,74) size 902x186 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 900x184
           RenderTableRow {TR} at (0,0) size 900x20
             RenderTableCell {TD} at (0,0) size 900x20 [color=#00FF00] [bgcolor=#000000] [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=3]
diff --git a/LayoutTests/platform/mac/tables/mozilla/bugs/bug7471-expected.txt b/LayoutTests/platform/mac/tables/mozilla/bugs/bug7471-expected.txt
index 4e36e61..44a7e66 100644
--- a/LayoutTests/platform/mac/tables/mozilla/bugs/bug7471-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/bugs/bug7471-expected.txt
@@ -42,9 +42,10 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 287x18
           text run at (0,0) width 287: "col elements with align=center on second col:"
       RenderTable {TABLE} at (0,160) size 705x76 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 703x74
           RenderTableRow {TR} at (0,2) size 703x22
             RenderTableCell {TD} at (2,2) size 231x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/core/misc-expected.txt b/LayoutTests/platform/mac/tables/mozilla/core/misc-expected.txt
index 85c3923..db336e9 100644
--- a/LayoutTests/platform/mac/tables/mozilla/core/misc-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/core/misc-expected.txt
@@ -7,8 +7,9 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 226x18
           text run at (0,0) width 226: "cell split with color (standard mode)"
       RenderTable {TABLE} at (0,18) size 31x28 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#0000FF]
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#0000FF]
         RenderTableSection {TBODY} at (1,1) size 29x26
           RenderTableRow {TR} at (0,2) size 29x22
             RenderTableCell {TD} at (2,2) size 25x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
diff --git a/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol1-expected.txt b/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol1-expected.txt
index 4e8361c..29a3235 100644
--- a/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol1-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol1-expected.txt
@@ -7,8 +7,9 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 541x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 539x26
           RenderTableRow {TR} at (0,2) size 539x22
             RenderTableCell {TD} at (2,2) size 200x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -23,8 +24,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 541x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 539x26
           RenderTableRow {TR} at (0,2) size 539x22
             RenderTableCell {TD} at (2,2) size 200x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol2-expected.txt b/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol2-expected.txt
index bcb2b31..b23bca1 100644
--- a/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol2-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol2-expected.txt
@@ -7,8 +7,9 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 441x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 439x26
           RenderTableRow {TR} at (0,2) size 439x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -23,8 +24,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 441x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 439x26
           RenderTableRow {TR} at (0,2) size 439x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol3-expected.txt b/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol3-expected.txt
index 89c7241..a27e100 100644
--- a/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol3-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/dom/deleteCol3-expected.txt
@@ -7,8 +7,9 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 341x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 339x26
           RenderTableRow {TR} at (0,2) size 339x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -23,8 +24,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 341x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 339x26
           RenderTableRow {TR} at (0,2) size 339x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/dom/insertCols1-expected.txt b/LayoutTests/platform/mac/tables/mozilla/dom/insertCols1-expected.txt
index fa14cd8..6d53f2c 100644
--- a/LayoutTests/platform/mac/tables/mozilla/dom/insertCols1-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/dom/insertCols1-expected.txt
@@ -7,9 +7,10 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 610x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 608x26
           RenderTableRow {TR} at (0,2) size 608x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -24,9 +25,10 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 610x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 608x26
           RenderTableRow {TR} at (0,2) size 608x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/dom/insertCols2-expected.txt b/LayoutTests/platform/mac/tables/mozilla/dom/insertCols2-expected.txt
index fa14cd8..6d53f2c 100644
--- a/LayoutTests/platform/mac/tables/mozilla/dom/insertCols2-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/dom/insertCols2-expected.txt
@@ -7,9 +7,10 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 610x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 608x26
           RenderTableRow {TR} at (0,2) size 608x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -24,9 +25,10 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 610x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 608x26
           RenderTableRow {TR} at (0,2) size 608x22
             RenderTableCell {TD} at (2,2) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/dom/insertCols3-expected.txt b/LayoutTests/platform/mac/tables/mozilla/dom/insertCols3-expected.txt
index 38ff5d0..31a268a 100644
--- a/LayoutTests/platform/mac/tables/mozilla/dom/insertCols3-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/dom/insertCols3-expected.txt
@@ -7,10 +7,11 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 512x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 510x26
           RenderTableRow {TR} at (0,2) size 510x22
             RenderTableCell {TD} at (2,2) size 50x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -28,10 +29,11 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 512x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 510x26
           RenderTableRow {TR} at (0,2) size 510x22
             RenderTableCell {TD} at (2,2) size 50x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla/marvin/col_span-expected.txt b/LayoutTests/platform/mac/tables/mozilla/marvin/col_span-expected.txt
index bf18039..1aeeca9 100644
--- a/LayoutTests/platform/mac/tables/mozilla/marvin/col_span-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla/marvin/col_span-expected.txt
@@ -8,7 +8,8 @@ layer at (0,0) size 800x600
           text run at (0,0) width 768: "The COL element specifies attributes for a table column. In this test case, the COL element is used in conjunction with the"
           text run at (0,18) width 101: "SPAN attribute."
       RenderTable {TABLE} at (0,52) size 560x52 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 558x50
           RenderTableRow {TR} at (0,2) size 558x22
             RenderTableCell {TH} at (2,2) size 423x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt
index 3152730..0590dd2 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug29058-2-expected.txt
@@ -8,10 +8,11 @@ layer at (0,0) size 800x542
           RenderText {#text} at (11,0) size 128x36
             text run at (11,0) width 128: "Table with no width"
             text run at (49,18) width 51: "attribute"
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,37) size 150x26
           RenderTableRow {TR} at (0,2) size 150x22
             RenderTableCell {TD} at (2,2) size 50x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -33,10 +34,11 @@ layer at (0,0) size 800x542
         RenderBlock {CAPTION} at (0,0) size 498x18
           RenderText {#text} at (123,0) size 252x18
             text run at (123,0) width 252: "Table with fixed width attribute =500px"
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,19) size 498x26
           RenderTableRow {TR} at (0,2) size 498x22
             RenderTableCell {TD} at (2,2) size 50x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -63,10 +65,11 @@ layer at (0,0) size 800x542
         RenderBlock {CAPTION} at (0,0) size 782x18
           RenderText {#text} at (284,0) size 213x18
             text run at (284,0) width 213: "Table with width attribute =100%"
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,19) size 782x26
           RenderTableRow {TR} at (0,2) size 782x22
             RenderTableCell {TD} at (2,2) size 50x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -88,10 +91,11 @@ layer at (0,0) size 800x542
         RenderBlock {CAPTION} at (0,0) size 498x18
           RenderText {#text} at (141,0) size 216x18
             text run at (141,0) width 216: "Table with width attribute =500px"
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,19) size 498x26
           RenderTableRow {TR} at (0,2) size 498x22
             RenderTableCell {TD} at (2,2) size 122x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -113,10 +117,11 @@ layer at (0,0) size 800x542
         RenderBlock {CAPTION} at (0,0) size 782x18
           RenderText {#text} at (284,0) size 213x18
             text run at (284,0) width 213: "Table with width attribute =100%"
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,19) size 782x26
           RenderTableRow {TR} at (0,2) size 782x22
             RenderTableCell {TD} at (2,2) size 193x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.txt
index 70e2e41..e24ba11 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug47163-expected.txt
@@ -4,11 +4,12 @@ layer at (0,0) size 800x84
   RenderBlock {HTML} at (0,0) size 800x84
     RenderBody {BODY} at (8,8) size 784x68
       RenderTable {TABLE} at (0,0) size 784x68
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (0,0) size 784x68
           RenderTableRow {TR} at (0,0) size 784x68
             RenderTableCell {TD} at (0,34) size 26x0 [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt
index fdddff9..c2003e2 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/bugs/bug7243-expected.txt
@@ -4,8 +4,9 @@ layer at (0,0) size 800x600
   RenderBlock {HTML} at (0,0) size 800x600
     RenderBody {BODY} at (8,8) size 784x584
       RenderTable {TABLE} at (0,0) size 332x44 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 330x42
           RenderTableRow {TR} at (0,10) size 330x22
             RenderTableCell {TD} at (10,10) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -17,8 +18,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,44) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,62) size 400x24 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 398x22
           RenderTableRow {TR} at (0,0) size 398x22
             RenderTableCell {TD} at (0,0) size 133x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -30,8 +32,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,86) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,104) size 302x24 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 300x22
           RenderTableRow {TR} at (0,0) size 300x22
             RenderTableCell {TD} at (0,0) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -43,7 +46,8 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,128) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,146) size 336x44 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 334x42
           RenderTableRow {TR} at (0,10) size 334x22
             RenderTableCell {TD} at (10,10) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -87,8 +91,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,358) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,376) size 784x100 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 782x98
           RenderTableRow {TR} at (0,10) size 782x78
             RenderTableCell {TD} at (10,10) size 301x78 [border: (10px solid #000000)] [r=0 c=0 rs=1 cs=1]
@@ -100,8 +105,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,476) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,494) size 100x44 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 98x42
           RenderTableRow {TR} at (0,10) size 98x22
             RenderTableCell {TD} at (10,10) size 16x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -116,8 +122,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,538) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,556) size 302x24 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 300x22
           RenderTableRow {TR} at (0,0) size 300x22
             RenderTableCell {TD} at (0,0) size 100x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.txt
index 9121d23..16c9f6d 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/backgrounds-expected.txt
@@ -363,7 +363,8 @@ layer at (0,0) size 785x2454
         RenderText {#text} at (0,18) size 55x18
           text run at (0,18) width 55: "col color"
       RenderTable {TABLE} at (0,1922) size 39x36 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
         RenderTableSection {TBODY} at (1,1) size 37x34
           RenderTableRow {TR} at (0,6) size 37x22
             RenderTableCell {TD} at (6,6) size 25x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -413,7 +414,8 @@ layer at (0,0) size 785x2454
         RenderText {#text} at (0,18) size 61x18
           text run at (0,18) width 61: "col image"
       RenderTable {TABLE} at (0,2230) size 75x70 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
         RenderTableSection {TBODY} at (7,7) size 61x56
           RenderTableRow {TR} at (0,4) size 61x22
             RenderTableCell {TD} at (4,4) size 25x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt
index 1459564..11a5541 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/col_span2-expected.txt
@@ -990,8 +990,9 @@ layer at (0,0) size 785x5451
       RenderBlock (anonymous) at (0,4041) size 769x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,4059) size 25x22 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
-        RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#0000FF]
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#FF0000]
+          RenderTableCol {COL} at (0,0) size 0x0 [bgcolor=#0000FF]
         RenderTableSection {TBODY} at (1,1) size 23x20
           RenderTableRow {TR} at (0,0) size 23x20
             RenderTableCell {TD} at (0,0) size 23x20 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=2]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt
index 54b0417..e06e284 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/cols1-expected.txt
@@ -36,7 +36,8 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,18) size 197x18
           text run at (0,18) width 197: "Both columns should be 200px"
       RenderTable {TABLE} at (0,146) size 408x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 406x26
           RenderTableRow {TR} at (0,2) size 406x22
             RenderTableCell {TD} at (2,2) size 200x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt
index 6291ca9..7d78dcc 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/columns-expected.txt
@@ -39,8 +39,9 @@ layer at (0,0) size 785x940
         RenderText {#text} at (0,18) size 174x18
           text run at (0,18) width 174: "auto table 2 cols with 1*,1*"
       RenderTable {TABLE} at (0,146) size 197x28 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 195x26
           RenderTableRow {TR} at (0,2) size 195x22
             RenderTableCell {TD} at (2,2) size 31x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -57,8 +58,9 @@ layer at (0,0) size 785x940
         RenderText {#text} at (0,18) size 174x18
           text run at (0,18) width 174: "auto table 2 cols with 2*,1*"
       RenderTable {TABLE} at (0,210) size 197x28 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 195x26
           RenderTableRow {TR} at (0,2) size 195x22
             RenderTableCell {TD} at (2,2) size 31x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -212,7 +214,8 @@ layer at (0,0) size 785x940
         RenderText {#text} at (0,18) size 61x18
           text run at (0,18) width 61: "auto table"
       RenderTable {TABLE} at (0,832) size 82x28 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 80x26
           RenderTableRow {TR} at (0,2) size 80x22
             RenderTableCell {TD} at (2,2) size 43x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -226,7 +229,8 @@ layer at (0,0) size 785x940
         RenderText {#text} at (0,18) size 66x18
           text run at (0,18) width 66: "fixed table"
       RenderTable {TABLE} at (0,896) size 200x28 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 198x26
           RenderTableRow {TR} at (0,2) size 198x22
             RenderTableCell {TD} at (2,2) size 111x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.txt
index c7e38c9..c3970ea 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/core/conflicts-expected.txt
@@ -61,7 +61,8 @@ layer at (0,0) size 785x1306
         RenderText {#text} at (0,18) size 344x18
           text run at (0,18) width 344: "fixed table - percent cell wins over fix cell (and in IE5)"
       RenderTable {TABLE} at (0,304) size 500x52 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 498x50
           RenderTableRow {TR} at (0,2) size 498x22
             RenderTableCell {TD} at (2,2) size 246x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -82,7 +83,8 @@ layer at (0,0) size 785x1306
         RenderText {#text} at (0,18) size 344x18
           text run at (0,18) width 344: "fixed table - percent cell wins over fix cell (and in IE5)"
       RenderTable {TABLE} at (0,392) size 500x52 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 498x50
           RenderTableRow {TR} at (0,2) size 498x22
             RenderTableCell {TD} at (2,2) size 246x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -103,7 +105,8 @@ layer at (0,0) size 785x1306
         RenderText {#text} at (0,18) size 344x18
           text run at (0,18) width 344: "fixed table - percent cell wins over fix cell (and in IE5)"
       RenderTable {TABLE} at (0,480) size 500x52 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 498x50
           RenderTableRow {TR} at (0,2) size 498x22
             RenderTableCell {TD} at (2,2) size 246x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -124,7 +127,8 @@ layer at (0,0) size 785x1306
         RenderText {#text} at (0,18) size 344x18
           text run at (0,18) width 344: "fixed table - percent cell wins over fix cell (and in IE5)"
       RenderTable {TABLE} at (0,568) size 500x52 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 498x50
           RenderTableRow {TR} at (0,2) size 498x22
             RenderTableCell {TD} at (2,2) size 118x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -295,7 +299,8 @@ layer at (0,0) size 785x1306
         RenderText {#text} at (0,18) size 373x18
           text run at (0,18) width 373: "percent cell/col percentage conflict goes to cell (and in IE5)"
       RenderTable {TABLE} at (0,1256) size 500x34 [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 498x32
           RenderTableRow {TR} at (0,5) size 498x22
             RenderTableCell {TD} at (5,5) size 386x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/LayoutTests/platform/mac/tables/mozilla_expected_failures/dom/appendCol1-expected.txt b/LayoutTests/platform/mac/tables/mozilla_expected_failures/dom/appendCol1-expected.txt
index 954e71e..1209db9 100644
--- a/LayoutTests/platform/mac/tables/mozilla_expected_failures/dom/appendCol1-expected.txt
+++ b/LayoutTests/platform/mac/tables/mozilla_expected_failures/dom/appendCol1-expected.txt
@@ -7,7 +7,8 @@ layer at (0,0) size 800x600
         RenderText {#text} at (0,0) size 214x18
           text run at (0,0) width 214: "The 2 tables should look the same"
       RenderTable {TABLE} at (0,18) size 62x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 60x26
           RenderTableRow {TR} at (0,2) size 60x22
             RenderTableCell {TD} at (2,2) size 27x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
@@ -20,8 +21,9 @@ layer at (0,0) size 800x600
       RenderBlock (anonymous) at (0,46) size 784x18
         RenderBR {BR} at (0,0) size 0x18
       RenderTable {TABLE} at (0,64) size 235x28 [bgcolor=#FFA500] [border: (1px outset #808080)]
-        RenderTableCol {COL} at (0,0) size 0x0
-        RenderTableCol {COL} at (0,0) size 0x0
+        RenderTableCol {COLGROUP} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
+          RenderTableCol {COL} at (0,0) size 0x0
         RenderTableSection {TBODY} at (1,1) size 233x26
           RenderTableRow {TR} at (0,2) size 233x22
             RenderTableCell {TD} at (2,2) size 27x22 [border: (1px inset #808080)] [r=0 c=0 rs=1 cs=1]
diff --git a/WebCore/ChangeLog b/WebCore/ChangeLog
index 2cec331..3e7824c 100644
--- a/WebCore/ChangeLog
+++ b/WebCore/ChangeLog
@@ -1,3 +1,22 @@
+2010-07-15  Eric Seidel  <eric at webkit.org>
+
+        Reviewed by Adam Barth.
+
+        LegacyHTMLTreeBuilder should insert an implicit <colgroup> before inserting <col> to match HTML5
+        https://bugs.webkit.org/show_bug.cgi?id=42346
+
+        This turned out to be an easy fix.
+
+        This is covered by lots of layout tests.  I believe
+        all of the changed results to be progressions.
+
+        This change had no measurable effect on the parser benchmark.
+
+        * html/LegacyHTMLTreeBuilder.cpp:
+        (WebCore::LegacyHTMLTreeBuilder::colCreateErrorCheck):
+        (WebCore::LegacyHTMLTreeBuilder::getNode):
+        * html/LegacyHTMLTreeBuilder.h:
+
 2010-07-15  Sam Weinig  <sam at webkit.org>
 
         Reviewed by Oliver Hunt.
diff --git a/WebCore/html/LegacyHTMLTreeBuilder.cpp b/WebCore/html/LegacyHTMLTreeBuilder.cpp
index bf62fe3..0434316 100644
--- a/WebCore/html/LegacyHTMLTreeBuilder.cpp
+++ b/WebCore/html/LegacyHTMLTreeBuilder.cpp
@@ -884,6 +884,15 @@ bool LegacyHTMLTreeBuilder::nestedStyleCreateErrorCheck(Token* t, RefPtr<Node>&)
     return allowNestedRedundantTag(t->tagName);
 }
 
+bool LegacyHTMLTreeBuilder::colCreateErrorCheck(Token*, RefPtr<Node>&)
+{
+    if (!m_current->hasTagName(tableTag))
+        return true;
+    RefPtr<Element> implicitColgroup = HTMLElementFactory::createHTMLElement(colgroupTag, m_document, 0, true);
+    insertNode(implicitColgroup.get());
+    return true;
+}
+
 bool LegacyHTMLTreeBuilder::tableCellCreateErrorCheck(Token*, RefPtr<Node>&)
 {
     popBlock(tdTag);
@@ -977,6 +986,7 @@ PassRefPtr<Node> LegacyHTMLTreeBuilder::getNode(Token* t)
         mapTagsToFunc(gFunctionMap, pCloserCreateErrorTags, &LegacyHTMLTreeBuilder::pCloserCreateErrorCheck);
 
         mapTagToFunc(gFunctionMap, bodyTag, &LegacyHTMLTreeBuilder::bodyCreateErrorCheck);
+        mapTagToFunc(gFunctionMap, colTag, &LegacyHTMLTreeBuilder::colCreateErrorCheck);
         mapTagToFunc(gFunctionMap, ddTag, &LegacyHTMLTreeBuilder::ddCreateErrorCheck);
         mapTagToFunc(gFunctionMap, dtTag, &LegacyHTMLTreeBuilder::dtCreateErrorCheck);
         mapTagToFunc(gFunctionMap, formTag, &LegacyHTMLTreeBuilder::formCreateErrorCheck);
diff --git a/WebCore/html/LegacyHTMLTreeBuilder.h b/WebCore/html/LegacyHTMLTreeBuilder.h
index cfd9519..4ac8413 100644
--- a/WebCore/html/LegacyHTMLTreeBuilder.h
+++ b/WebCore/html/LegacyHTMLTreeBuilder.h
@@ -85,6 +85,7 @@ private:
     PassRefPtr<Node> getNode(Token*);
     bool bodyCreateErrorCheck(Token*, RefPtr<Node>&);
     bool canvasCreateErrorCheck(Token*, RefPtr<Node>&);
+    bool colCreateErrorCheck(Token*, RefPtr<Node>&);
     bool commentCreateErrorCheck(Token*, RefPtr<Node>&);
     bool ddCreateErrorCheck(Token*, RefPtr<Node>&);
     bool dtCreateErrorCheck(Token*, RefPtr<Node>&);

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list