aboutsummaryrefslogtreecommitdiffstats
path: root/parse-xml.c
diff options
context:
space:
mode:
Diffstat (limited to 'parse-xml.c')
-rw-r--r--parse-xml.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/parse-xml.c b/parse-xml.c
index 9b0797ea0..ea568f740 100644
--- a/parse-xml.c
+++ b/parse-xml.c
@@ -197,7 +197,7 @@ static void pressure(char *buffer, void *_press)
case FLOAT:
/* Maybe it's in Bar? */
if (val.fp < 500.0) {
- pressure->mbar = val.fp * 1000;
+ pressure->mbar = val.fp * 1000 + 0.5;
break;
}
printf("Unknown fractional pressure reading %s\n", buffer);
@@ -233,7 +233,7 @@ static void depth(char *buffer, void *_depth)
val.fp = val.i;
/* fallthrough */
case FLOAT:
- depth->mm = val.fp * 1000;
+ depth->mm = val.fp * 1000 + 0.5;
break;
default:
printf("Strange depth reading %s\n", buffer);
@@ -257,7 +257,7 @@ static void temperature(char *buffer, void *_temperature)
break;
/* Celsius */
if (val.fp < 50.0) {
- temperature->mkelvin = (val.fp + 273.16) * 1000;
+ temperature->mkelvin = (val.fp + 273.15) * 1000 + 0.5;
break;
}
/* Fahrenheit */
@@ -353,6 +353,8 @@ static void try_to_fill_sample(struct sample *sample, const char *name, char *bu
return;
if (MATCH(".sample.depth", depth, &sample->depth))
return;
+ if (MATCH(".sample.temp", temperature, &sample->temperature))
+ return;
if (MATCH(".sample.temperature", temperature, &sample->temperature))
return;
if (MATCH(".sample.sampletime", sampletime, &sample->time))