mirror of
https://github.com/subsurface/subsurface.git
synced 2025-02-19 22:16:15 +00:00
Fix various issues with the dive add / edit manual dive code
- get_gas_from_events does NOT always set o2/he. It only updates them IFF a matching event is found; so we need to make sure we start out with a valid gas mix - the way we tried to restore the edited dive in case of an edit to a manually added that is cancelled was completely bogus. Way too complex when we can simply and reliably simply store the dive and then copy it back Fixes #270 Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
This commit is contained in:
parent
3801b765ff
commit
8ae8c81d3d
4 changed files with 22 additions and 26 deletions
|
@ -57,6 +57,8 @@ void set_last_stop(bool last_stop_6m)
|
|||
|
||||
void get_gas_from_events(struct divecomputer *dc, int time, int *o2, int *he)
|
||||
{
|
||||
// we don't modify the values passed in if nothing is found
|
||||
// so don't call with uninitialized o2/he !
|
||||
struct event *event = dc->events;
|
||||
while (event && event->time.seconds <= time) {
|
||||
if (!strcmp(event->name, "gaschange")) {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue