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>
This commit is contained in:
Dirk Hohndel 2014-11-02 10:38:09 -08:00
parent 6ce0afb99c
commit 9eb55a0fc6

2
dive.c
View file

@ -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;