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



kio/kio/paste.cpp
<http://git.reviewboard.kde.org/r/104802/#comment10391>

    dlg hasn't been exec()'d yet.
    
    I think these two lines should go, they don't add anything



knewstuff/knewstuff2/ui/downloaddialog.cpp
<http://git.reviewboard.kde.org/r/104802/#comment10392>

    In the case of the events you're trying to prevent if the dialog is killed 
it will always return
    
    QDialog::Rejected, so this doesn't actually add anything (same for a few 
cases)
    (doesn't do any harm though...)



kutils/kpluginselector.cpp
<http://git.reviewboard.kde.org/r/104802/#comment10393>

    in this case everything in moduleProxyList gets leaked.
    
    In an ideal world if you have objects on the heap only try to have only one 
return point, after we've deleted everything.


- David Edmundson


On May 1, 2012, 4:37 p.m., Dawit Alemayehu wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/104802/
> -----------------------------------------------------------
> 
> (Updated May 1, 2012, 4:37 p.m.)
> 
> 
> Review request for kdelibs.
> 
> 
> Description
> -------
> 
> This patch attempts to mitigate the unintended crashes that might result from 
> using QDialog::exec in kdelibs. Since nested event loops are potential 
> sources of inadvertent crashes, this patch attempts to prevent that by 
> changing how dialogs are created in kdelibs. All blocking dialog calls, i.e. 
> those that invoke QDialog.exec(), are wrapped with QPointer and the QPointer 
> is checked once QDialog.exec returns. See 
> http://www.kdedevelopers.org/node/3919 for more details.
> 
> Note that I am aware of other classes that create nested event loops (e.g. 
> QProcess), but this fix is only applicable to QDialog usage.
> 
> 
> Diffs
> -----
> 
>   kdeui/colors/kcolordialog.cpp 95bb7f5 
>   kdeui/dialogs/kedittoolbar.cpp bb80952 
>   kdeui/dialogs/kinputdialog.cpp 2801c00 
>   kdeui/dialogs/kpixmapregionselectordialog.cpp 11d964b 
>   kdeui/dialogs/kshortcutsdialog.cpp a73f8f2 
>   kdeui/dialogs/kshortcutseditor.cpp 5984a9d 
>   kdeui/findreplace/kfinddialog.cpp de2dd90 
>   kdeui/fonts/kfontdialog.cpp 9bea490 
>   kdeui/widgets/ktextedit.cpp 1e58706 
>   kdeui/xmlgui/kmenumenuhandler_p.cpp d8c82b6 
>   kfile/kdiroperator.cpp 18ffc34 
>   kfile/kdirselectdialog.cpp e0dcafa 
>   kfile/kfileplaceeditdialog.cpp 5537551 
>   kio/kfile/kacleditwidget.cpp d89429f 
>   kio/kfile/kencodingfiledialog.cpp 4686065 
>   kio/kfile/kfiledialog.cpp d121e4d 
>   kio/kfile/kicondialog.cpp b7d646f 
>   kio/kfile/kpropertiesdialog.cpp feb0c9e 
>   kio/kfile/kurlrequesterdialog.cpp 8ee29e1 
>   kio/kio/jobuidelegate.cpp 85679c2 
>   kio/kio/kbuildsycocaprogressdialog.cpp fba30ec 
>   kio/kio/passworddialog.cpp faf0c77 
>   kio/kio/paste.cpp ca451fb 
>   kio/kssl/kcm/cacertificatespage.cpp 0a269a3 
>   knewstuff/knewstuff2/ui/downloaddialog.cpp b4d2dcd 
>   knewstuff/knewstuff2/ui/kdxsbutton.cpp e8f8c83 
>   knewstuff/knewstuff3/knewstuffbutton.cpp 9c14e99 
>   kparts/browserrun.cpp c89829d 
>   kutils/kpluginselector.cpp 505e53f 
>   nepomuk/ui/tagwidget.cpp 7c59922 
>   nepomuk/utils/searchwidget.cpp f46e72a 
> 
> Diff: http://git.reviewboard.kde.org/r/104802/diff/
> 
> 
> Testing
> -------
> 
> 
> Thanks,
> 
> Dawit Alemayehu
> 
>

Reply via email to