-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://reviewboard.kde.org/r/1004/#review1572
-----------------------------------------------------------



/trunk/KDE/kdenetwork/kopete/kopete/chatwindow/kopetechatwindow.cpp
<http://reviewboard.kde.org/r/1004/#comment969>

    This is one place that I think initializing the pointer is really necessary 
or the if above can result to true even though the object is already deleted, 
causing it to be deleted twice, which can crash Kopete.



/trunk/KDE/kdenetwork/kopete/libkopete/kopetecommandhandler.cpp
<http://reviewboard.kde.org/r/1004/#comment970>

    Sure this must go after the next line.



/trunk/KDE/kdenetwork/kopete/protocols/wlm/wlmlibmsn.cpp
<http://reviewboard.kde.org/r/1004/#comment971>

    This is another place where I think initializing the pointer is necessary.


- Lamarque


On 2009-07-13 18:50:24, Lamarque Souza wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://reviewboard.kde.org/r/1004/
> -----------------------------------------------------------
> 
> (Updated 2009-07-13 18:50:24)
> 
> 
> Review request for Kopete.
> 
> 
> Summary
> -------
> 
> Initialise deleted pointers to 0L. Throughout all Kopete source code pointers 
> are deleted and not initialized, grep -r 'delete '  $(find \( -name "*.cpp" 
> -o -name "*.h" \) ) | wc returns 1105 lines, I can do a rough estimation of 
> at least half of those lines do not reinitialize pointers. Althouth 
> reinitialing pointers are not always necessary in some cases it does is 
> necessary and by what I have seen there are such places in Kopete's source 
> code. Kopete::CommandHandler::slotExecFinished even passed one deleted 
> pointer to a function, which seems really wrong to me, it should delete the 
> pointer after calling the function, not before. To illustrate the problem 
> assume a is a class member pointer:
> 
> delete a; // in one class method
> 
> // In another class method:
> if (a) // the result will the true even though a is deleted
>         do a->"something" // this can crash the application
> 
> 
> Diffs
> -----
> 
>   /trunk/KDE/kdenetwork/kopete/kopete/chatwindow/chatview.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/kopete/chatwindow/kopetechatwindow.cpp 993925 
>   
> /trunk/KDE/kdenetwork/kopete/kopete/chatwindow/kopetechatwindowstylemanager.cpp
>  993925 
>   /trunk/KDE/kdenetwork/kopete/kopete/config/accounts/kopeteaccountconfig.cpp 
> 993925 
>   
> /trunk/KDE/kdenetwork/kopete/kopete/config/appearance/layout/TokenDropTarget.cpp
>  993925 
>   /trunk/KDE/kdenetwork/kopete/kopete/kopetewindow.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/kopete/statusmenu/kopetestatusgroupaction.cpp 
> 993925 
>   /trunk/KDE/kdenetwork/kopete/kopete/statusmenu/kopetestatusrootaction.cpp 
> 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopeteaccountmanager.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopetechatsession.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopetecommandhandler.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopetecontact.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopeteidentitymanager.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopeteproperty.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/kopetewalletmanager.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/private/kopeteviewmanager.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/ui/avatarselectorwidget.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/libkopete/ui/kopetelistviewitem.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/protocols/wlm/wlmchatmanager.cpp 993925 
>   /trunk/KDE/kdenetwork/kopete/protocols/wlm/wlmlibmsn.cpp 993925 
> 
> Diff: http://reviewboard.kde.org/r/1004/diff
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Lamarque
> 
>

_______________________________________________
kopete-devel mailing list
kopete-devel@kde.org
https://mail.kde.org/mailman/listinfo/kopete-devel

Reply via email to