summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2020-10-24 14:50:59 -0700
committerGravatar Dirk Hohndel <dirk@hohndel.org>2020-10-25 13:58:03 -0700
commit8e330f297ed31bb13ff14110a58e93bed59dcea7 (patch)
treeaf03561fcb03cd24b1cb031875af3b9dfd5b3772
parente30ba8a8e0f1c182ae3ce7022667b7aca17d3df4 (diff)
downloadsubsurface-8e330f297ed31bb13ff14110a58e93bed59dcea7.tar.gz
cleanup: fix over-eager Coverity warnings
Technically get_dive() could return a nullptr. The existing code made sure the argument passed to get_dive() was one that always would result in a valid dive pointer being returned. The new code is only slightly less efficient but allows a static code analysis to easily see that we don't derefence NULL pointers here. On some level this change is unnecessary. But it's also not wrong. Fixes CID 354762 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r--core/trip.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/core/trip.c b/core/trip.c
index 570bd1fee..8f153d587 100644
--- a/core/trip.c
+++ b/core/trip.c
@@ -74,10 +74,12 @@ bool is_trip_before_after(const struct dive *dive, bool before)
{
int idx = get_idx_by_uniq_id(dive->id);
if (before) {
- if (idx > 0 && get_dive(idx - 1)->divetrip)
+ const struct dive *d = get_dive(idx - 1);
+ if (d && d->divetrip)
return true;
} else {
- if (idx < dive_table.nr - 1 && get_dive(idx + 1)->divetrip)
+ const struct dive *d = get_dive(idx + 1);
+ if (d && d->divetrip)
return true;
}
return false;