mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
profile: remove clearHandlers function (fixes crash)
Recently (674c20227b
), the call to ProfileWidget::clearHandlers()
was moved from PlannerWidgets::replanDive() to ProfileWidget2.
This cause a crash, because the code assumes that the number
of elements in the handles-vector the divepointplanner model
is the same.
Clearing the handles violates this assumption. It turns out
that the clearHandlers() function is broken anyway: it clear
the handles-vector, but not the gases-vector, which should
likewise have the same number of elements. It appears that
the clearHandlers() function is an artifact and it is
mysterious how this has worked so far. Remove.
Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
parent
5979292469
commit
196bd7b7b2
2 changed files with 0 additions and 16 deletions
|
@ -1318,17 +1318,6 @@ void ProfileWidget2::setProfileState()
|
||||||
}
|
}
|
||||||
|
|
||||||
#ifndef SUBSURFACE_MOBILE
|
#ifndef SUBSURFACE_MOBILE
|
||||||
void ProfileWidget2::clearHandlers()
|
|
||||||
{
|
|
||||||
if (handles.count()) {
|
|
||||||
foreach (DiveHandler *handle, handles) {
|
|
||||||
scene()->removeItem(handle);
|
|
||||||
delete handle;
|
|
||||||
}
|
|
||||||
handles.clear();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
void ProfileWidget2::setToolTipVisibile(bool visible)
|
void ProfileWidget2::setToolTipVisibile(bool visible)
|
||||||
{
|
{
|
||||||
toolTipItem->setVisible(visible);
|
toolTipItem->setVisible(visible);
|
||||||
|
@ -1339,7 +1328,6 @@ void ProfileWidget2::setAddState()
|
||||||
if (currentState == ADD)
|
if (currentState == ADD)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
clearHandlers();
|
|
||||||
setProfileState();
|
setProfileState();
|
||||||
mouseFollowerHorizontal->setVisible(true);
|
mouseFollowerHorizontal->setVisible(true);
|
||||||
mouseFollowerVertical->setVisible(true);
|
mouseFollowerVertical->setVisible(true);
|
||||||
|
@ -1373,7 +1361,6 @@ void ProfileWidget2::setPlanState()
|
||||||
if (currentState == PLAN)
|
if (currentState == PLAN)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
clearHandlers();
|
|
||||||
setProfileState();
|
setProfileState();
|
||||||
mouseFollowerHorizontal->setVisible(true);
|
mouseFollowerHorizontal->setVisible(true);
|
||||||
mouseFollowerVertical->setVisible(true);
|
mouseFollowerVertical->setVisible(true);
|
||||||
|
|
|
@ -163,9 +163,6 @@ private:
|
||||||
void createPPGas(PartialPressureGasItem *item, int verticalColumn, color_index_t color, color_index_t colorAlert,
|
void createPPGas(PartialPressureGasItem *item, int verticalColumn, color_index_t color, color_index_t colorAlert,
|
||||||
const double *thresholdSettingsMin, const double *thresholdSettingsMax);
|
const double *thresholdSettingsMin, const double *thresholdSettingsMax);
|
||||||
void clearPictures();
|
void clearPictures();
|
||||||
#ifndef SUBSURFACE_MOBILE
|
|
||||||
void clearHandlers();
|
|
||||||
#endif
|
|
||||||
void plotPicturesInternal(const struct dive *d, bool synchronous);
|
void plotPicturesInternal(const struct dive *d, bool synchronous);
|
||||||
void addDivemodeSwitch(int seconds, int divemode);
|
void addDivemodeSwitch(int seconds, int divemode);
|
||||||
void addBookmark(int seconds);
|
void addBookmark(int seconds);
|
||||||
|
|
Loading…
Add table
Reference in a new issue