Summary: | Errors parsing a www.pygame.org page | ||
---|---|---|---|
Product: | [Applications] konqueror | Reporter: | Federico Asara <ze4lot> |
Component: | khtml parsing | Assignee: | Konqueror Developers <konq-bugs> |
Status: | RESOLVED FIXED | ||
Severity: | normal | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: |
Description
Federico Asara
2006-02-19 12:56:09 UTC
hmm, the parser seems to inappropriately give a standalone input a form which shadows the function context: <form class='addcomment' action='comment_new.php'> <input type='hidden' name='link' value='pygame.Surface'> <input type='submit' value='Add a Comment'> </form> </div> <div id='pygame.Surface-comments'> <input type='button' value='Comments (2)' onclick='comments_show("pygame.Surface");'></div> <br> SVN commit 517005 by ivor: Replace one form reattach hack with another, pending a better fix. BUG: 122968 BUG: 122273 CCBUG: 116790 M +1 -5 html_formimpl.cpp M +9 -0 htmlparser.cpp --- branches/KDE/3.5/kdelibs/khtml/html/html_formimpl.cpp #517004:517005 @@ -886,11 +886,7 @@ { if( p->id() == ID_FORM ) return static_cast<HTMLFormElementImpl *>(p); - NodeImpl *s = p->previousSibling(); - if (!s) - p = p->parentNode(); - else - p = s; + p = p->parentNode(); } #ifdef FORMS_DEBUG kdDebug( 6030 ) << "couldn't find form!" << endl; --- branches/KDE/3.5/kdelibs/khtml/html/htmlparser.cpp #517004:517005 @@ -1388,6 +1388,15 @@ blockElem->removeChild(currNode, exceptionCode); newNode->appendChild(currNode, exceptionCode); currNode = nextNode; + + // TODO - To be replaced. + // Re-register form elements with currently active form, step 1 will have removed them + if (form) + { + HTMLGenericFormElementImpl *e = static_cast<HTMLGenericFormElementImpl *>(currNode); + if (e) + form->registerFormElement(e); + } } // Step 4: Place |newNode| under |blockElem|. |blockElem| is still out of the document, so no This bug still occurs in KDE 3.5.2 (don't know if the above patch has been applied to 3.5.2 version?) The fix will be in KDE 3.5.3 |