From 102147c8b6d36810e9f9de622a88125c5be9ee94 Mon Sep 17 00:00:00 2001
From: Joakim Bygdell <j.bygdell@gmail.com>
Date: Sat, 7 Mar 2015 16:37:12 +0100
Subject: [PATCH] When using gasmixes where the difference is less than 2% The
 planner can't caclulate casconsumptions correctly. This sets the minimum
 gasdifference to 1%, fixes #795.

Signed-off-by: Joakim Bygdell <j.bygdell@gmail.com>
---
 planner.c             | 4 ++--
 qt-ui/diveplanner.cpp | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/planner.c b/planner.c
index d12f660..6b4f054 100644
--- a/planner.c
+++ b/planner.c
@@ -115,7 +115,7 @@ int get_gasidx(struct dive *dive, struct gasmix *mix)
 	int gasidx = -1;
 
 	while (++gasidx < MAX_CYLINDERS)
-		if (gasmix_distance(&dive->cylinder[gasidx].gasmix, mix) < 200)
+		if (gasmix_distance(&dive->cylinder[gasidx].gasmix, mix) < 100)
 			return gasidx;
 	return -1;
 }
@@ -210,7 +210,7 @@ static int verify_gas_exists(struct gasmix mix_in)
 		cyl = displayed_dive.cylinder + i;
 		if (cylinder_nodata(cyl))
 			continue;
-		if (gasmix_distance(&cyl->gasmix, &mix_in) < 200)
+		if (gasmix_distance(&cyl->gasmix, &mix_in) < 100)
 			return i;
 	}
 	fprintf(stderr, "this gas %s should have been on the cylinder list\nThings will fail now\n", gasname(&mix_in));
diff --git a/qt-ui/diveplanner.cpp b/qt-ui/diveplanner.cpp
index 434da1f..7a35daa 100644
--- a/qt-ui/diveplanner.cpp
+++ b/qt-ui/diveplanner.cpp
@@ -1112,7 +1112,7 @@ bool DivePlannerPointsModel::tankInUse(struct gasmix gasmix)
 			continue;
 		if (!p.entered) // removing deco gases is ok
 			continue;
-		if (gasmix_distance(&p.gasmix, &gasmix) < 200)
+		if (gasmix_distance(&p.gasmix, &gasmix) < 100)
 			return true;
 	}
 	return false;
@@ -1139,7 +1139,7 @@ void DivePlannerPointsModel::tanksUpdated()
 					struct gasmix gas;
 					gas.o2.permille = oldGases.at(i).first;
 					gas.he.permille = oldGases.at(i).second;
-					if (gasmix_distance(&gas, &p.gasmix) < 200) {
+					if (gasmix_distance(&gas, &p.gasmix) < 100) {
 						p.gasmix.o2.permille = gases.at(i).first;
 						p.gasmix.he.permille = gases.at(i).second;
 					}
-- 
1.9.3 (Apple Git-50)

