fix: use QPointer for ImageAnalyser::m_sourceItem

Raw QQuickItem* was not tracked for destruction, causing
use-after-free if the source item was destroyed between
setSourceItem() and deferred requestUpdate() invocations.
This commit is contained in:
2 * r + 2 * t 2026-03-24 01:52:25 +11:00
parent 04b4ae3ba8
commit b85b0e7afb

View file

@ -4,6 +4,7 @@
#include <qfuture.h>
#include <qfuturewatcher.h>
#include <qobject.h>
#include <qpointer.h>
#include <qqmlintegration.h>
namespace caelestia {
@ -48,7 +49,7 @@ private:
QFutureWatcher<AnalyseResult>* const m_futureWatcher;
QString m_source;
QQuickItem* m_sourceItem;
QPointer<QQuickItem> m_sourceItem;
int m_rescaleSize;
QColor m_dominantColour;