Guard against crashes when IStatus object gets destroyed at bad times

Authored by mwolff on Jun 17 2019, 8:26 PM.

Description

Guard against crashes when IStatus object gets destroyed at bad times

When we connect to a signal using QueuedConnection and that signal
carries its context object as argument, then the signal may be
delivered after the object itself was deleted. This happened in the
cmakemanager test for example.

To prevent this, we don't use the QueueudConnection directly but
roll our own based on QTimer::singleShot(0, ...). This allows us
to capture the context object explicitly and then check that before
trying to access it.

Details

Committed
mwolffJun 17 2019, 8:29 PM
Parents
R32:634c7b2d654b: Cleanup: use QHash instead of QMap when no order is required
Branches
Unknown
Tags
Unknown