summaryrefslogtreecommitdiffstats
path: root/parse-xml.c
diff options
context:
space:
mode:
authorGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-09-10 15:15:40 -0700
committerGravatar Linus Torvalds <torvalds@linux-foundation.org>2011-09-10 15:15:40 -0700
commited4b739f5f618fa9fb316dcec4c67224bb4f2bb8 (patch)
tree073395060fab8523c10668f6b10b54c225fa8c02 /parse-xml.c
parente48cebc2d8e3acdfaf64512259fa582245265799 (diff)
downloadsubsurface-ed4b739f5f618fa9fb316dcec4c67224bb4f2bb8.tar.gz
Don't guess input cylinder size as cubic feet
That just screws up the good xml files that have everything in well-defined units and chose the sane metric units. So do the cuft -> liter conversion only if the input units are explicitly CUFT, or known ambiguous input (SUUNTO). Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'parse-xml.c')
-rw-r--r--parse-xml.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/parse-xml.c b/parse-xml.c
index 92da468f4..4fd4dcfe6 100644
--- a/parse-xml.c
+++ b/parse-xml.c
@@ -1053,11 +1053,12 @@ static void sanitize_cylinder_type(cylinder_type_t *type)
/* Ok, we have both size and pressure: try to match a description */
match_standard_cylinder(type);
- /* .. and let's assume that the 'size' was cu ft of air */
- volume_of_air = type->size.mliter * 28.317; /* milli-cu ft to milliliter */
- atm = type->workingpressure.mbar / 1013.25; /* working pressure in atm */
- volume = volume_of_air / atm; /* milliliters at 1 atm: "true size" */
- type->size.mliter = volume + 0.5;
+ if (input_units.volume == CUFT || import_source == SUUNTO) {
+ volume_of_air = type->size.mliter * 28.317; /* milli-cu ft to milliliter */
+ atm = type->workingpressure.mbar / 1013.25; /* working pressure in atm */
+ volume = volume_of_air / atm; /* milliliters at 1 atm: "true size" */
+ type->size.mliter = volume + 0.5;
+ }
}
static void sanitize_cylinder_info(struct dive *dive)