diff options
author | Anton Lundin <glance@acc.umu.se> | 2014-07-17 19:58:55 +0200 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-07-18 10:09:42 -0700 |
commit | 8e5eb71e0b344a68fc6fcfae1ace6fef6605a3d5 (patch) | |
tree | ba31edb311b3e7dbe2a62bf115db9951e79e212b /qt-ui/profile/diveeventitem.cpp | |
parent | 606bf377c539610950114f2bf2f55af0de4a2209 (diff) | |
download | subsurface-8e5eb71e0b344a68fc6fcfae1ace6fef6605a3d5.tar.gz |
Correct usage of current_dive to displayed_dive
current_dive is the selected dive, and displayed_dive is the one we are
currently drawing. They are quite often the same one, but not in the
case of adding a dive for example.
This fixes potential null pointer dereferences in the case of a blank
divelist, and makes sure we use the correct data in the case of adding
and planning dives.
Signed-off-by: Anton Lundin <glance@acc.umu.se>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'qt-ui/profile/diveeventitem.cpp')
-rw-r--r-- | qt-ui/profile/diveeventitem.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/qt-ui/profile/diveeventitem.cpp b/qt-ui/profile/diveeventitem.cpp index 732d2a344..b9bb4482b 100644 --- a/qt-ui/profile/diveeventitem.cpp +++ b/qt-ui/profile/diveeventitem.cpp @@ -95,7 +95,7 @@ void DiveEventItem::setupToolTipString() // We need to look at row + 1, where the new gas is active to find what we are switching to. int cylinder_idx = dataModel->data(dataModel->index(result.first().row() + 1, DivePlotDataModel::CYLINDERINDEX)).toInt(); name += ": "; - name += gasname(¤t_dive->cylinder[cylinder_idx].gasmix); + name += gasname(&displayed_dive.cylinder[cylinder_idx].gasmix); } else if (type == SAMPLE_EVENT_PO2 && name == "SP change") { name += QString(":%1").arg((double)value / 1000); } else { @@ -128,7 +128,7 @@ bool DiveEventItem::shouldBeHidden() * Don't bother showing them if they match the first gas already */ if (!strcmp(event->name, "gaschange") && event->time.seconds <= 30) { - struct dive *dive = current_dive; + struct dive *dive = &displayed_dive; if (dive && get_cylinder_index(dive, event) == 0) return true; } |