[SCM] WebKit Debian packaging branch, debian/unstable, updated. debian/1.1.15-1-40151-g37bb677
hyatt
hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc
Sat Sep 26 07:12:47 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit 93a3ef6aed0dbfc091442fc161577aadc2093c2d
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Mon Dec 9 05:48:57 2002 +0000
Fix for 3121814. Forms inside table elements (tbody and table
etc.) can be inline. Just remove the assert and replace it
with a bailout.
Fix for 3036479. Tables with specified heights but cells
with no height (or no cells at all) were not honoring
the specified height.
Reviewed by: gramps
* khtml/rendering/render_table.cpp:
(RenderTable::RenderTable):
(RenderTable::startRow):
(RenderTable::layoutRows):
(RenderTable::paint):
(RenderTable::recalcCells):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@2972 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 35b39b2..f3a87dc 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,22 @@
+2002-12-08 David Hyatt <hyatt at apple.com>
+
+ Fix for 3121814. Forms inside table elements (tbody and table
+ etc.) can be inline. Just remove the assert and replace it
+ with a bailout.
+
+ Fix for 3036479. Tables with specified heights but cells
+ with no height (or no cells at all) were not honoring
+ the specified height.
+
+ Reviewed by: gramps
+
+ * khtml/rendering/render_table.cpp:
+ (RenderTable::RenderTable):
+ (RenderTable::startRow):
+ (RenderTable::layoutRows):
+ (RenderTable::paint):
+ (RenderTable::recalcCells):
+
2002-12-08 Maciej Stachowiak <mjs at apple.com>
Reviewed by Dave.
@@ -59,6 +78,7 @@
* WebCore.pbproj/project.pbxproj: Electron is doing his thing.
+>>>>>>> 1.1071
2002-12-08 David Hyatt <hyatt at apple.com>
Fix for image bullets. They were neglecting to offset
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 35b39b2..f3a87dc 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,22 @@
+2002-12-08 David Hyatt <hyatt at apple.com>
+
+ Fix for 3121814. Forms inside table elements (tbody and table
+ etc.) can be inline. Just remove the assert and replace it
+ with a bailout.
+
+ Fix for 3036479. Tables with specified heights but cells
+ with no height (or no cells at all) were not honoring
+ the specified height.
+
+ Reviewed by: gramps
+
+ * khtml/rendering/render_table.cpp:
+ (RenderTable::RenderTable):
+ (RenderTable::startRow):
+ (RenderTable::layoutRows):
+ (RenderTable::paint):
+ (RenderTable::recalcCells):
+
2002-12-08 Maciej Stachowiak <mjs at apple.com>
Reviewed by Dave.
@@ -59,6 +78,7 @@
* WebCore.pbproj/project.pbxproj: Electron is doing his thing.
+>>>>>>> 1.1071
2002-12-08 David Hyatt <hyatt at apple.com>
Fix for image bullets. They were neglecting to offset
diff --git a/WebCore/khtml/rendering/render_flow.cpp b/WebCore/khtml/rendering/render_flow.cpp
index 5d2e4d7..74bc4da 100644
--- a/WebCore/khtml/rendering/render_flow.cpp
+++ b/WebCore/khtml/rendering/render_flow.cpp
@@ -226,8 +226,9 @@ void RenderFlow::layout()
KHTMLAssert( !layouted() );
KHTMLAssert( minMaxKnown() );
- KHTMLAssert(!isInline());
-
+ if (isInline()) // Inline <form>s inside various table elements can cause us to
+ return; // come in here. Just bail. -dwh
+
int oldWidth = m_width;
calcWidth();
diff --git a/WebCore/khtml/rendering/render_table.cpp b/WebCore/khtml/rendering/render_table.cpp
index 6aca780..37d7e03 100644
--- a/WebCore/khtml/rendering/render_table.cpp
+++ b/WebCore/khtml/rendering/render_table.cpp
@@ -108,7 +108,7 @@ RenderTable::RenderTable(DOM::NodeImpl* node)
totalCols = 0; // this should be expanded to the maximum number of cols
// by the first row parsed
- totalRows = 1;
+ totalRows = 0;
allocRows = 5; // allocate five rows initially
rowInfo.resize( totalRows+1 );
memset( rowInfo.data(), 0, (totalRows+1)*sizeof(RowInfo)); // Init to 0.
@@ -245,6 +245,8 @@ void RenderTable::startRow()
row++;
col = 0;
if(row > totalRows) totalRows = row;
+ if (totalRows == 0)
+ totalRows = 1; // Go ahead and acknowledge that we have one row. -dwh.
}
void RenderTable::closeRow()
@@ -1459,7 +1461,7 @@ void RenderTable::layoutRows(int yoff)
}
bool tableGrew = false;
- if (th && totalRows && rowInfo[totalRows].height)
+ if (th && totalRows)
{
th-=(totalRows+1)*spacing;
int dh = th-rowInfo[totalRows].height;
@@ -1486,11 +1488,17 @@ void RenderTable::layoutRows(int yoff)
if (rowInfo[r+1].percentage)
add += (rowInfo[r+1].percentage/totalPercentage)*dh;
}
- else
+ else if (tot)
add+=dh*(rowInfo[r+1].height-prev)/tot;
prev=rowInfo[r+1].height;
rowInfo[r+1].height+=add;
}
+
+ int remaining = th - (rowInfo[totalRows].height + add);
+ if (remaining > 0 && totalRows > 0)
+ // Just give the space to the last row.
+ rowInfo[totalRows-1].height += remaining;
+
rowInfo[totalRows].height=th;
}
}
@@ -1642,7 +1650,7 @@ void RenderTable::paint(QPainter *p, int _x, int _y,
// the case below happens during parsing
// when we have a new table that never got layouted. Don't paint it.
if ( totalRows == 1 && rowInfo[1].height == 0 )
- return;
+ return;
if (paintPhase == BACKGROUND_PHASE && style()->visibility() == VISIBLE)
paintBoxDecorations(p, _x, _y, _w, _h, _tx, _ty);
@@ -1801,7 +1809,7 @@ void RenderTable::recalcCells()
totalCols = 0; // this should be expanded to the maximum number of cols
// by the first row parsed
- totalRows = 1;
+ totalRows = 0;
allocRows = 5; // allocate five rows initially
cells = new RenderTableCell ** [allocRows];
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list