Problem loading the outputs from the algorithm.
In the AlgorithmDialog constructor, instead of copying the algorithm, a new instance is created and fed with the values from the “old” algorithm.
This new instance is used to run the algorithm in a separate thread. As far as I understand, after the algorithm is executed and before closing the dialog, the outputs will be loaded in order to put the results in a new layer. These outputs are loaded from the new instance of the algorithm, in other words it’s loaded the same way as before but instead of loading from the copy is loading from the new instance.
You can find the code on this branch (The relevant changes are on the AlgorithmDialog and GeoAlgorithm).