[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:35:02 UTC 2009


The following commit has been merged in the debian/unstable branch:
commit f029e3786922fe95b9b31d2ea0f47444295113c6
Author: hyatt <hyatt at 268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Date:   Mon Apr 7 22:31:55 2003 +0000

    	* khtml/html/htmlparser.cpp:
    	(KHTMLParser::handleResidualStyleCloseTagAcrossBlocks):
    
    	This is a patch to the parser to prevent residual
    	style from creating illegal constructs according to the DTD.
    	For now, it will just bail on performing the fixup if an
    	illegal construct would be created.
    
    	This fixes the regression #3219944.
    
    	Reviewed by darin
    
    
    git-svn-id: http://svn.webkit.org/repository/webkit/trunk@4034 268f45cc-cd09-0410-ab3c-d52691b4dbfc

diff --git a/WebCore/ChangeLog-2003-10-25 b/WebCore/ChangeLog-2003-10-25
index b428b0d..fdf59cd 100644
--- a/WebCore/ChangeLog-2003-10-25
+++ b/WebCore/ChangeLog-2003-10-25
@@ -1,3 +1,17 @@
+2003-04-07  David Hyatt  <hyatt at apple.com>
+
+	* khtml/html/htmlparser.cpp:
+	(KHTMLParser::handleResidualStyleCloseTagAcrossBlocks):
+
+	This is a patch to the parser to prevent residual 
+	style from creating illegal constructs according to the DTD.
+	For now, it will just bail on performing the fixup if an
+	illegal construct would be created.
+
+	This fixes the regression #3219944.
+
+	Reviewed by darin
+	
 2003-04-07  Darin Adler  <darin at apple.com>
 
         Reviewed by Dave.
diff --git a/WebCore/ChangeLog-2005-08-23 b/WebCore/ChangeLog-2005-08-23
index b428b0d..fdf59cd 100644
--- a/WebCore/ChangeLog-2005-08-23
+++ b/WebCore/ChangeLog-2005-08-23
@@ -1,3 +1,17 @@
+2003-04-07  David Hyatt  <hyatt at apple.com>
+
+	* khtml/html/htmlparser.cpp:
+	(KHTMLParser::handleResidualStyleCloseTagAcrossBlocks):
+
+	This is a patch to the parser to prevent residual 
+	style from creating illegal constructs according to the DTD.
+	For now, it will just bail on performing the fixup if an
+	illegal construct would be created.
+
+	This fixes the regression #3219944.
+
+	Reviewed by darin
+	
 2003-04-07  Darin Adler  <darin at apple.com>
 
         Reviewed by Dave.
diff --git a/WebCore/khtml/html/htmlparser.cpp b/WebCore/khtml/html/htmlparser.cpp
index 9651122..fa03082 100644
--- a/WebCore/khtml/html/htmlparser.cpp
+++ b/WebCore/khtml/html/htmlparser.cpp
@@ -1262,6 +1262,13 @@ void KHTMLParser::handleResidualStyleCloseTagAcrossBlocks(HTMLStackElem* elem)
     NodeImpl* residualElem = prev->node;
     NodeImpl* blockElem = prevMaxElem ? prevMaxElem->node : current;
     NodeImpl* parentElem = elem->node;
+
+    // Check to see if the reparenting that is going to occur is allowed according to the DOM.
+    // FIXME: We should either always allow it or perform an additional fixup instead of
+    // just bailing here.
+    // Example: <p><font><center>blah</font></center></p> isn't doing a fixup right now.
+    if (!parentElem->childAllowed(blockElem))
+        return;
     
     if (maxElem->node->parentNode() != elem->node) {
         // Walk the stack and remove any elements that aren't residual style tags.  These
@@ -1348,7 +1355,7 @@ void KHTMLParser::handleResidualStyleCloseTagAcrossBlocks(HTMLStackElem* elem)
     
     // Step 5: Reparent |blockElem|.  Now the full attachment of the fixed up tree takes place.
     parentElem->appendChild(blockElem, exceptionCode);
-    
+        
     // Step 6: Elide |elem|, since it is effectively no longer open.  Also update
     // the node associated with the previous stack element so that when it gets popped,
     // it doesn't make the residual element the next current node.

-- 
WebKit Debian packaging



More information about the Pkg-webkit-commits mailing list