From 5fd93175331d780e3d2a2ca232bd483f8e374593 Mon Sep 17 00:00:00 2001 From: Jef Driesen Date: Wed, 15 Feb 2023 19:34:40 +0100 Subject: [PATCH] Ignore all gas mixes for freedives For freedives it makes no sense to report any gas mixes. The freedives also use a different sample format, which doesn't generate any gas change events. --- src/shearwater_predator_parser.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/shearwater_predator_parser.c b/src/shearwater_predator_parser.c index 1ac89aa..e087558 100644 --- a/src/shearwater_predator_parser.c +++ b/src/shearwater_predator_parser.c @@ -697,11 +697,13 @@ shearwater_predator_parser_cache (shearwater_predator_parser_t *parser) parser->headersize = headersize; parser->footersize = footersize; parser->ngasmixes = 0; - for (unsigned int i = 0; i < ngasmixes; ++i) { - if (gasmix[i].oxygen == 0 && gasmix[i].helium == 0) - continue; - parser->gasmix[parser->ngasmixes] = gasmix[i]; - parser->ngasmixes++; + if (divemode != M_FREEDIVE) { + for (unsigned int i = 0; i < ngasmixes; ++i) { + if (gasmix[i].oxygen == 0 && gasmix[i].helium == 0) + continue; + parser->gasmix[parser->ngasmixes] = gasmix[i]; + parser->ngasmixes++; + } } parser->ntanks = 0; for (unsigned int i = 0; i < NTANKS; ++i) {