diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-27 22:26:03 -0400 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2015-09-27 22:53:43 -0400 |
commit | 2c0123c6772dcabd05156f3d2533267f4676ebde (patch) | |
tree | 8de5450eec7f84caec42e6abf623550019537b3d /dive.c | |
parent | cbf29653d7e9d92660295c7c5ffbbdbaba1886fb (diff) | |
download | subsurface-2c0123c6772dcabd05156f3d2533267f4676ebde.tar.gz |
Don't use surface sample data for cylinder beginning/end
pressure
At the beginning of the dive, let the cylinder cool down if the diver
starts off at the surface. And at the end of the dive, there may be
surface pressures where the diver has already turned off the air supply
(especially for computers like the Uemis Zurich that end up saving quite
a bit of samples after the dive has ended).
So just don't use surface samples to populate the beginning/ending
cylinder pressure data.
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
Diffstat (limited to 'dive.c')
-rw-r--r-- | dive.c | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -800,6 +800,19 @@ static void fixup_pressure(struct dive *dive, struct sample *sample, enum cylind if (!pressure) return; + /* + * Ignore surface samples for tank pressure information. + * + * At the beginning of the dive, let the cylinder cool down + * if the diver starts off at the surface. And at the end + * of the dive, there may be surface pressures where the + * diver has already turned off the air supply (especially + * for computers like the Uemis Zurich that end up saving + * quite a bit of samples after the dive has ended). + */ + if (sample->depth.mm < SURFACE_THRESHOLD) + return; + /* FIXME! sensor -> cylinder mapping? */ if (index >= MAX_CYLINDERS) return; |