| Index: Source/WebCore/rendering/RenderBox.cpp | 
| =================================================================== | 
| --- Source/WebCore/rendering/RenderBox.cpp	(revision 123512) | 
| +++ Source/WebCore/rendering/RenderBox.cpp	(working copy) | 
| @@ -3951,9 +3951,11 @@ | 
| { | 
| // FIXME: The table code should handle that automatically. If not, | 
| // we should fix it and remove the table part checks. | 
| -    if (box->isTable()) | 
| -        toRenderTable(box)->setNeedsSectionRecalc(); | 
| -    else if (box->isTableSection()) | 
| +    if (box->isTable()) { | 
| +        // Because we may have added some sections with already computed column structures, we need to | 
| +        // sync the table structure with them now. This avoids crashes when adding new cells to the table. | 
| +        toRenderTable(box)->forceSectionsRecalc(); | 
| +    } else if (box->isTableSection()) | 
| toRenderTableSection(box)->setNeedsCellRecalc(); | 
|  | 
| box->setNeedsLayoutAndPrefWidthsRecalc(); | 
|  |