[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:18:16 UTC 2009
The following commit has been merged in the debian/unstable branch:
commit a176a20d3dc43560917f3f606b9afec2ee653601
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date: Wed Jan 1 22:59:29 2003 +0000
Fix tables so that malformations inside them are properly pulled
out of the table without being flattened.
Fixes 3131480.
Reviewed by gramps
* khtml/html/dtd.cpp:
(DOM::checkChild):
* khtml/html/htmlparser.cpp:
(KHTMLParser::insertNode):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@3226 268f45cc-cd09-0410-ab3c-d52691b4dbfc
diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index 9373f8d..731a115 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,17 @@
+2003-01-01 David Hyatt <hyatt at apple.com>
+
+ Fix tables so that malformations inside them are properly pulled
+ out of the table without being flattened.
+
+ Fixes 3131480.
+
+ Reviewed by gramps
+
+ * khtml/html/dtd.cpp:
+ (DOM::checkChild):
+ * khtml/html/htmlparser.cpp:
+ (KHTMLParser::insertNode):
+
=== Alexander-47 ===
2002-12-30 Darin Adler <darin at apple.com>
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index 9373f8d..731a115 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,17 @@
+2003-01-01 David Hyatt <hyatt at apple.com>
+
+ Fix tables so that malformations inside them are properly pulled
+ out of the table without being flattened.
+
+ Fixes 3131480.
+
+ Reviewed by gramps
+
+ * khtml/html/dtd.cpp:
+ (DOM::checkChild):
+ * khtml/html/htmlparser.cpp:
+ (KHTMLParser::insertNode):
+
=== Alexander-47 ===
2002-12-30 Darin Adler <darin at apple.com>
diff --git a/WebCore/khtml/html/dtd.cpp b/WebCore/khtml/html/dtd.cpp
index e4f14c4..d21a597 100644
--- a/WebCore/khtml/html/dtd.cpp
+++ b/WebCore/khtml/html/dtd.cpp
@@ -727,7 +727,7 @@ bool DOM::checkChild(ushort tagID, ushort childID)
case ID_TFOOT:
case ID_TBODY:
// THEAD: TR +
- if(childID == ID_FORM || childID == ID_TR || childID == ID_TEXT || childID == ID_COMMENT ||
+ if(childID == ID_FORM || childID == ID_TR || childID == ID_COMMENT ||
childID == ID_SCRIPT)
return true;
return false;
diff --git a/WebCore/khtml/html/htmlparser.cpp b/WebCore/khtml/html/htmlparser.cpp
index 060a6d8..9c137d2 100644
--- a/WebCore/khtml/html/htmlparser.cpp
+++ b/WebCore/khtml/html/htmlparser.cpp
@@ -614,14 +614,16 @@ bool KHTMLParser::insertNode(NodeImpl *n, bool flat)
NodeImpl *parentparent = parent->parentNode();
- if(( node->id() == ID_TR &&
- ( parent->id() == ID_THEAD ||
- parent->id() == ID_TBODY ||
- parent->id() == ID_TFOOT ) && parentparent->id() == ID_TABLE ) ||
- ( !checkChild( ID_TR, id ) && ( node->id() == ID_THEAD || node->id() == ID_TBODY || node->id() == ID_TFOOT ) &&
- parent->id() == ID_TABLE ) )
+ if (n->isTextNode() ||
+ ( node->id() == ID_TR &&
+ ( parent->id() == ID_THEAD ||
+ parent->id() == ID_TBODY ||
+ parent->id() == ID_TFOOT ) && parentparent->id() == ID_TABLE ) ||
+ ( !checkChild( ID_TR, id ) && ( node->id() == ID_THEAD || node->id() == ID_TBODY || node->id() == ID_TFOOT ) &&
+ parent->id() == ID_TABLE ))
{
- node = ( node->id() == ID_TR ) ? parentparent : parent;
+ node = (node->id() == ID_TABLE) ? node :
+ ((node->id() == ID_TR) ? parentparent : parent);
NodeImpl *parent = node->parentNode();
int exceptioncode = 0;
parent->insertBefore( n, node, exceptioncode );
@@ -631,6 +633,12 @@ bool KHTMLParser::insertNode(NodeImpl *n, bool flat)
#endif
break;
}
+ if (n->isElementNode() && tagPriority[id] != 0 &&
+ !flat && endTag[id] != DOM::FORBIDDEN)
+ {
+ pushBlock(id, tagPriority[id]);
+ current = n;
+ }
return true;
}
@@ -640,7 +648,7 @@ bool KHTMLParser::insertNode(NodeImpl *n, bool flat)
e = new HTMLTableSectionElementImpl( document, ID_TBODY );
else
e = new HTMLTableRowElementImpl( document );
-
+
// Now reattach any discarded attributes if they exist. -dwh
if (discardedStackPos > 0 && current->id() != ID_TABLE) {
discardedStackPos--;
--
WebKit Debian packaging
More information about the Pkg-webkit-commits
mailing list