From 22a96bf395fad9597174f11eb6a275ca0ae54fae Mon Sep 17 00:00:00 2001 From: Linus Torvalds Date: Fri, 31 Aug 2018 12:25:43 -0700 Subject: [PATCH] garmin: only record gasmixes for cylinders that aren't enabled This actually takes the gas status information into account, and doesn't show gas mixes that are disabled. All the Garmin Descent data now looks reasonable, but we're not generating any events (so no warnings, but also no gas change events etc). Signed-off-by: Linus Torvalds --- src/garmin_parser.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/garmin_parser.c b/src/garmin_parser.c index 97313d1..6a33d87 100644 --- a/src/garmin_parser.c +++ b/src/garmin_parser.c @@ -150,8 +150,10 @@ static void flush_pending_record(struct garmin_parser_t *garmin) record->pending = 0; if (!garmin->callback) { if (pending & RECORD_GASMIX) { + // 0 - disabled, 1 - enabled, 2 - backup + int enabled = record->gas_status > 0; int index = record->index; - if (index < MAXGASES) { + if (enabled && index < MAXGASES) { garmin->cache.gasmix[index] = record->gasmix; garmin->cache.GASMIX_COUNT = index+1; }