X-Git-Url: http://git.tdb.fi/?a=blobdiff_plain;f=dive.c;h=36ee8e78c496ce88c375edfd001eb9b64f6c43a8;hb=549708c6eaab2d0592c3e520e0debd82d64619b4;hp=3774ba80d037d77b9077a48e42fea16077cf50bc;hpb=e5b6bfc7ed03bb6649abcfbac79f06aafd235918;p=ext%2Fsubsurface.git diff --git a/dive.c b/dive.c index 3774ba8..36ee8e7 100644 --- a/dive.c +++ b/dive.c @@ -160,7 +160,7 @@ struct sample *prepare_sample(struct dive **divep) return NULL; } -void finish_sample(struct dive *dive, struct sample *sample) +void finish_sample(struct dive *dive) { dive->samples++; } @@ -451,7 +451,12 @@ struct dive *fixup_dive(struct dive *dive) } } if (end < 0) + { + /* Assume an ascent/descent rate of 9 m/min */ + int asc_desc_time = dive->maxdepth.mm*60/9000; + dive->meandepth.mm = dive->maxdepth.mm*(dive->duration.seconds-asc_desc_time)/dive->duration.seconds; return dive; + } update_duration(&dive->duration, end - start); if (start != end) @@ -490,7 +495,7 @@ static struct dive *add_sample(struct sample *sample, int time, struct dive *div return NULL; *p = *sample; p->time.seconds = time; - finish_sample(dive, p); + finish_sample(dive); return dive; }