[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: branches/KDE/3.5/kdelibs/khtml/html
From: Allan Sandfeld Jensen <kde () carewolf ! com>
Date: 2005-08-04 23:23:54
Message-ID: 1123197834.563672.22678.nullmailer () svn ! kde ! org
[Download RAW message or body]
SVN commit 443115 by carewolf:
It appears we shouldn't allow <FORM> in <P>.
So handle <TABLE><FORM> more like WebCore, but with much less stupid hacks.
M +2 -1 dtd.cpp
M +7 -2 htmlparser.cpp
--- branches/KDE/3.5/kdelibs/khtml/html/dtd.cpp #443114:443115
@@ -597,7 +597,7 @@
return check_array(childID, tag_list_1) || check_array(childID, tag_list_6);
case ID_P:
// P: ( _0 | TABLE ) *
- return check_array(childID, tag_list_0) || (!strict && (childID == ID_TABLE \
|| childID == ID_FORM)); + return check_array(childID, tag_list_0) || (!strict \
&& childID == ID_TABLE); case ID_H1:
case ID_H2:
case ID_H3:
@@ -721,6 +721,7 @@
case ID_THEAD:
case ID_TFOOT:
case ID_TBODY:
+ case ID_FORM:
case ID_SCRIPT:
return true;
default:
--- branches/KDE/3.5/kdelibs/khtml/html/htmlparser.cpp #443114:443115
@@ -672,9 +672,10 @@
#endif
parent->insertBefore(n, node, exceptioncode);
if (exceptioncode) {
-#ifdef PARSER_DEBUG
- kdDebug(6035) << "adding content before table failed.." << \
endl; +#ifndef PARSER_DEBUG
+ if (!n->isTextNode())
#endif
+ kdDebug(6035) << "adding content before table failed.." \
<< endl; break;
}
if ( n->isElementNode() && tagPriority[id] != 0 &&
@@ -721,6 +722,10 @@
popBlock(ID_DT);
handled = true;
break;
+ case ID_FORM:
+ popBlock(ID_FORM);
+ handled = true;
+ break;
case ID_SELECT:
if( n->isInline() )
return false;
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic