GUI update mechanism is faulty
The methods which update the GUI (eg., Session::onExperimentChanged
or SubframeExperiment::dataChanged
) are unsafe, since they rely on the assumption that at least a single Project
is available. Upon removal of the last Project
, calling Session::currentProject
leads to a crash with a message like the following:
terminate called after throwing an instance of 'std::out_of_range'
what(): vector::_M_range_check: __n (which is 18446744073709551615) >= this->size() (which is 0)
Aborted
This needs a careful correction of the GUI update mechanism to make it robust.
Edited by Ammar Nejati