diff options
| author | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2023-12-14 15:16:40 +0100 |
|---|---|---|
| committer | Tor Arne Vestbø <tor.arne.vestbo@qt.io> | 2023-12-19 19:41:28 +0100 |
| commit | 7fac2fac9a512cef2d5cdefd9837d76f8be7de05 (patch) | |
| tree | f6ffed5662628f2b2599d4d424089068e18c542b /src/corelib/io/qdebug.cpp | |
| parent | a03d0a33b574677be1c9040e706591c5a1f8ec69 (diff) | |
Document how to process deferred deletes in a plugin-scenario
When Qt is not driving the event dispatching, the event loop level
of the thread will stay 0. As a result, we will not automatically
bump the deferred delete event's scope level to 1 when the deferred
delete happens from a code path that doesn't raise the scope level
via QScopedScopeLevelCounter, leaving the event with loop and scope
level 0.
As we only process these 0+0 deferred delete events automatically from
QCoreApplicationPrivate::execCleanup(), which is not going to be called
when the app doesn't call QCoreAppliction::exec(), we were failing to
process the deferred deletes both during the application's runtime,
as well as on shutdown.
Task-number: QTBUG-120124
Fixes: QTBUG-117975
Pick-to: 6.7 6.6 6.5
Change-Id: I2b8accb432517a48370923ee2d760f8e2e4a8055
Reviewed-by: Fabian Kosmale <fabian.kosmale@qt.io>
Diffstat (limited to 'src/corelib/io/qdebug.cpp')
0 files changed, 0 insertions, 0 deletions
