diff options
author | Michal Klocek <michal.klocek@qt.io> | 2021-10-27 09:03:53 +0200 |
---|---|---|
committer | Michal Klocek <michal.klocek@qt.io> | 2021-11-01 18:52:04 +0200 |
commit | eb5cae26a43beae747909777da3f29fad82fef5e (patch) | |
tree | 90246f0522e78559fa99885cd56f82ea8690faec /src/corelib/kernel | |
parent | ca298bbefc1f45ef51d6bd6c348e47b2708be881 (diff) |
Add warning about QCoreApplication deferred delete
In some bug reports we got code which does deleteLater()
on QCoreApplication, however this is not going to work as
the user may expect.
In cases where an application uses Qt WebEngine, this leads
to weird looking crashes on exit as webenginecontext is not
destroyed.
Pick-to: 6.2 5.15
Change-Id: I4d284f30b0c7cad15ba6da3d65cdf813c36ee036
Reviewed-by: Michael BrĂ¼ning <michael.bruning@qt.io>
Reviewed-by: Allan Sandfeld Jensen <allan.jensen@qt.io>
Diffstat (limited to 'src/corelib/kernel')
-rw-r--r-- | src/corelib/kernel/qobject.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/corelib/kernel/qobject.cpp b/src/corelib/kernel/qobject.cpp index ec4da51ad9..d4b345c2d4 100644 --- a/src/corelib/kernel/qobject.cpp +++ b/src/corelib/kernel/qobject.cpp @@ -2313,6 +2313,10 @@ void QObject::removeEventFilter(QObject *obj) */ void QObject::deleteLater() { +#ifdef QT_DEBUG + if (qApp == this) + qWarning("You are deferring the delete of QCoreApplication, this may not work as expected."); +#endif QCoreApplication::postEvent(this, new QDeferredDeleteEvent()); } |