summaryrefslogtreecommitdiffstats
path: root/dive.c
diff options
context:
space:
mode:
authorGravatar Dirk Hohndel <dirk@hohndel.org>2014-11-02 10:38:09 -0800
committerGravatar Dirk Hohndel <dirk@hohndel.org>2014-11-02 10:38:09 -0800
commit9eb55a0fc6b13dfd608009cac275bdbbbb71592c (patch)
treeb289e0588816d61a2483b7376493746521046a63 /dive.c
parent6ce0afb99ccbc5fe940c4ca727afcf9cd33dffd5 (diff)
downloadsubsurface-9eb55a0fc6b13dfd608009cac275bdbbbb71592c.tar.gz
Prevent segfault for dive with gas change but no samples
Not quite sure where such a dive would come from, but anyway, just don't dereference the pointer unless it's non-NULL. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'dive.c')
-rw-r--r--dive.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/dive.c b/dive.c
index 5bcdf3aa8..73c7bd2e7 100644
--- a/dive.c
+++ b/dive.c
@@ -789,7 +789,7 @@ static int same_rounded_pressure(pressure_t a, pressure_t b)
int explicit_first_cylinder(struct dive *dive, struct divecomputer *dc)
{
struct event *ev = get_next_event(dc->events, "gaschange");
- if (ev && ev->time.seconds == dc->sample[0].time.seconds)
+ if (ev && dc && dc->sample && ev->time.seconds == dc->sample[0].time.seconds)
return get_cylinder_index(dive, ev);
else
return 0;