diff options
author | Miika Turkia <miika.turkia@gmail.com> | 2014-07-12 13:12:24 +0300 |
---|---|---|
committer | Dirk Hohndel <dirk@hohndel.org> | 2014-07-12 08:04:55 -0700 |
commit | 97597dfd97295517383336d2050d7a4b554b0d3c (patch) | |
tree | 3a3fc8f9c5da5ae1c5b95c5345e773c417368b83 | |
parent | 79015e17f890eee41fb4f8894468e17478ae3657 (diff) | |
download | subsurface-97597dfd97295517383336d2050d7a4b554b0d3c.tar.gz |
Add type for gaschange events, if missing
Subsurface has saved gas change events without type attribute at some
point. Thus we need to add the type when reading in log files, if it is
missing. (Gas change logic relies on the type field nowadays.)
Fixes #617
Fixes #600
Signed-off-by: Miika Turkia <miika.turkia@gmail.com>
Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
-rw-r--r-- | parse-xml.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/parse-xml.c b/parse-xml.c index 5375e3202..606e25196 100644 --- a/parse-xml.c +++ b/parse-xml.c @@ -1337,6 +1337,12 @@ static void event_end(void) pic->offset.seconds = cur_event.time.seconds; dive_add_picture(cur_dive, pic); } else { + /* At some point gas change events did not have any type. Thus we need to add + * one on import, if we encounter the type one missing. + */ + if (cur_event.type == 0 && strcmp(cur_event.name, "gaschange") == 0) + cur_event.type = 25; + add_event(dc, cur_event.time.seconds, cur_event.type, cur_event.flags, cur_event.value, cur_event.name); |