Details
-
Bug
-
Resolution: Fixed
-
P2: Important
-
5.14.0
-
None
-
-
5
-
Qt6_Foundation_Sprint 38, Qt6_Foundation_Sprint 39
Description
Imagine a sequence of asynchronous tasks that have to proceed sequentially and accumulated result of tasks has to be provided somehow.
The one of possible implementations (see attached archive) is based on tracking asynchronous tasks using QFutureInterface<T> and combining their results by master-QFutureInterface<T>.
Everything works fine when all the tasks provides some results.
Imagine that the chain of tasks containing some tasks that actually reports no results (it depends on task's logic).
Expectation for master-QFutureInterface<T> is to ignore an empty result since task didn't actually provide it.
However, inspecting the results of master-QFutureInterface<T> on finish shows a junk caused by reporting empty results from some tasks. This behaviour is unexpected and considered as a bug.
Reproducible example attached.