Browse Source

Merge pull request #6456 from DonLakeFlyer/SliderCrash

FactValueSlider: Fix crash when empty
QGC4.4
Don Gagne 7 years ago committed by GitHub
parent
commit
be3901a8fc
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
  1. 1
      src/FactSystem/Fact.cc
  2. 11
      src/FactSystem/FactValueSliderListModel.cc

1
src/FactSystem/Fact.cc

@ -701,7 +701,6 @@ FactValueSliderListModel* Fact::valueSliderModel(void) @@ -701,7 +701,6 @@ FactValueSliderListModel* Fact::valueSliderModel(void)
{
if (!_valueSliderModel) {
_valueSliderModel = new FactValueSliderListModel(*this);
QQmlEngine::setObjectOwnership(_valueSliderModel, QQmlEngine::JavaScriptOwnership);
}
return _valueSliderModel;
}

11
src/FactSystem/FactValueSliderListModel.cc

@ -30,6 +30,7 @@ FactValueSliderListModel::FactValueSliderListModel(Fact& fact, QObject* parent) @@ -30,6 +30,7 @@ FactValueSliderListModel::FactValueSliderListModel(Fact& fact, QObject* parent)
, _initialValueRounded (0)
, _increment (0)
{
QQmlEngine::setObjectOwnership(this, QQmlEngine::CppOwnership);
}
FactValueSliderListModel::~FactValueSliderListModel()
@ -38,10 +39,12 @@ FactValueSliderListModel::~FactValueSliderListModel() @@ -38,10 +39,12 @@ FactValueSliderListModel::~FactValueSliderListModel()
int FactValueSliderListModel::resetInitialValue(void)
{
// Remove any old rows
beginRemoveRows(QModelIndex(), 0, _cValues - 1);
_cValues = 0;
endRemoveRows();
if (_cValues > 0) {
// Remove any old rows
beginRemoveRows(QModelIndex(), 0, _cValues - 1);
_cValues = 0;
endRemoveRows();
}
_initialValue = _fact.cookedValue().toDouble();
_initialValueRounded = qRound(_initialValue);

Loading…
Cancel
Save