From 502a7706b94380d4957a7e594fc7c4c4db8ae81b Mon Sep 17 00:00:00 2001 From: Ivan Solovev Date: Thu, 9 Mar 2023 13:22:12 +0100 Subject: QFutureInterface: add a warning when an existing continuation is overwritten MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ... and also extend the documentation to explain this case explicitly. Fixes: QTBUG-107545 Pick-to: 6.5 6.2 Change-Id: I9414cc677b037989de60e97871485018e5c8a569 Reviewed-by: MÃ¥rten Nordheim --- src/corelib/thread/qfutureinterface.cpp | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'src/corelib/thread/qfutureinterface.cpp') diff --git a/src/corelib/thread/qfutureinterface.cpp b/src/corelib/thread/qfutureinterface.cpp index ed46052fa7..e656527e04 100644 --- a/src/corelib/thread/qfutureinterface.cpp +++ b/src/corelib/thread/qfutureinterface.cpp @@ -834,6 +834,10 @@ void QFutureInterfaceBase::setContinuation(std::functioncontinuationState != QFutureInterfaceBasePrivate::Cleaned) { + if (d->continuation) { + qWarning() << "Adding a continuation to a future which already has a continuation. " + "The existing continuation is overwritten."; + } d->continuation = std::move(func); d->continuationData = continuationFutureData; } -- cgit v1.2.3