Two possible problems in khtml

Ismail Donmez ismail at pardus.org.tr
Fri Mar 31 13:47:11 BST 2006


Hi,

Someone in #khtml told us that he run a statistical code checker against khtml 
source code ( not full khtml he told but only limited parts ), and it show up 
two obvious bugs.

First is dom2_traversalimpl.cpp line starting 588 :

=======================================================
if( _tempCurrent )
    {
        _result = isAccepted( _tempCurrent );
        switch ( _result )
        {
       [..]
    }
    // now the case if we don't have previous sibling
    else
    {
        _tempCurrent = _tempCurrent->parentNode(); <-- _tempCurrent is NULL so 
this is a null pointer referece.

Looking at similar functions I think it should be :

_tempCurrent = n->parentNode();
=======================================================

Second is css_valueimpl.cpp starting line 804 :

=======================================================
    khtml::DocLoader *docLoader = 0;
    const StyleBaseImpl *root = style;
    while (root->parent())
        root = root->parent();
    if (root->isCSSStyleSheet())
        docLoader = static_cast<const CSSStyleSheetImpl*>(root)->docLoader();

    m_image = docLoader->requestImage(url); <-- docLoader can be NULL
=======================================================

Also the guy told me he can process rest of the khtml if someone can send him 
gcc -E output which doesn't contain any external reference ( references to 
outside headers etc ). I don't know how to do this, if someone can do this I 
can give the contact details in private.

Regards,
ismail
-- 
If at first you don't succeed, redefine success.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 191 bytes
Desc: not available
URL: <https://mail.kde.org/mailman/private/kfm-devel/attachments/20060331/f4aced23/attachment.sig>


More information about the kfm-devel mailing list