From 4e92cb256721e8590e293f09ee730f51322730ec Mon Sep 17 00:00:00 2001 From: Michael Andreen Date: Sun, 6 Mar 2022 11:34:12 +0100 Subject: [PATCH] Maintain sensor index for uemis and liquivision Previosuly they always used index 0 for the active sensor, use add_sample_pressure instead. Signed-off-by: Michael Andreen Signed-off-by: Dirk Hohndel --- core/liquivision.c | 9 +++------ core/uemis.c | 4 +--- 2 files changed, 4 insertions(+), 9 deletions(-) diff --git a/core/liquivision.c b/core/liquivision.c index c460fc9b8..ca0bb111f 100644 --- a/core/liquivision.c +++ b/core/liquivision.c @@ -343,8 +343,7 @@ static void parse_dives(int log_version, const unsigned char *buf, unsigned int sample->time.seconds = event.time; sample->depth.mm = array_uint16_le(ds + (d - 1) * 2) * 10; // cm->mm sample->temperature.mkelvin = C_to_mkelvin((float) array_uint16_le(ts + (d - 1) * 2) / 10); // dC->mK - sample->sensor[0] = event.pressure.sensor; - sample->pressure[0].mbar = event.pressure.mbar; + add_sample_pressure(sample, event.pressure.sensor, event.pressure.mbar); finish_sample(dc); break; @@ -361,16 +360,14 @@ static void parse_dives(int log_version, const unsigned char *buf, unsigned int sample->time.seconds = sample_time; sample->depth.mm = depth_mm; sample->temperature.mkelvin = temp_mk; - sample->sensor[0] = event.pressure.sensor; - sample->pressure[0].mbar = event.pressure.mbar; + add_sample_pressure(sample, event.pressure.sensor, event.pressure.mbar); finish_sample(dc); d++; break; } else { // Event is prior to sample sample->time.seconds = event.time; - sample->sensor[0] = event.pressure.sensor; - sample->pressure[0].mbar = event.pressure.mbar; + add_sample_pressure(sample, event.pressure.sensor, event.pressure.mbar); if (last_time == sample_time) { sample->depth.mm = depth_mm; sample->temperature.mkelvin = temp_mk; diff --git a/core/uemis.c b/core/uemis.c index a11c1625b..0eebff6ad 100644 --- a/core/uemis.c +++ b/core/uemis.c @@ -359,9 +359,7 @@ void uemis_parse_divelog_binary(char *base64, void *datap) sample->time.seconds = u_sample->dive_time; sample->depth.mm = rel_mbar_to_depth(u_sample->water_pressure, dive); sample->temperature.mkelvin = C_to_mkelvin(u_sample->dive_temperature / 10.0); - sample->sensor[0] = active; - sample->pressure[0].mbar = - (u_sample->tank_pressure_high * 256 + u_sample->tank_pressure_low) * 10; + add_sample_pressure(sample, active, (u_sample->tank_pressure_high * 256 + u_sample->tank_pressure_low) * 10); sample->cns = u_sample->cns; uemis_event(dive, dc, sample, u_sample); finish_sample(dc);