Review Request: Mitigate potential crashes associated with the use of QDialog::exec in kdelibs
Dawit Alemayehu
adawit at kde.org
Tue May 1 17:37:09 BST 2012
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/104802/
-----------------------------------------------------------
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
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20120501/12fd50be/attachment.htm>
More information about the kde-core-devel
mailing list