Skip to content

Commit 124064c

Browse files
committed
add dataset validity checks
1 parent 6114835 commit 124064c

1 file changed

Lines changed: 11 additions & 8 deletions

File tree

src/ColoringAction.cpp

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -71,20 +71,23 @@ ColoringAction::ColoringAction(QObject* parent, const QString& title) :
7171
_constantColorAction.setEnabled(currentIndex == 0);
7272

7373
const auto currentColorDataset = getCurrentColorDataset();
74-
disconnect(&_currentColorPointsDataset, &Dataset<Points>::dataDimensionsChanged, this, nullptr);
74+
if (_currentColorPointsDataset.isValid())
75+
{
76+
disconnect(&_currentColorPointsDataset, &Dataset<Points>::dataDimensionsChanged, this, nullptr);
77+
}
7578
_currentColorPointsDataset = Dataset<Points>();
7679
if (currentColorDataset.isValid()) {
7780
const auto currentColorDatasetTypeIsPointType = currentColorDataset->getDataType() == PointType;
7881

79-
if (currentColorDatasetTypeIsPointType) {
82+
if (currentColorDatasetTypeIsPointType) {
8083
_currentColorPointsDataset = currentColorDataset.get<Points>();
81-
connect(&_currentColorPointsDataset, &Dataset<Points>::dataDimensionsChanged, this, [this]() {
82-
_dimensionAction.setPointsDataset(_currentColorPointsDataset);
83-
updateScatterPlotWidgetColors();
84-
});
84+
if (_currentColorPointsDataset.isValid()) {
85+
connect(&_currentColorPointsDataset, &Dataset<Points>::dataDimensionsChanged, this, [this]() {
86+
_dimensionAction.setPointsDataset(_currentColorPointsDataset);
87+
updateScatterPlotWidgetColors();
88+
});
89+
}
8590
_dimensionAction.setPointsDataset(_currentColorPointsDataset);
86-
87-
8891
}
8992
else {
9093
_dimensionAction.setPointsDataset(Dataset<Points>());

0 commit comments

Comments
 (0)