diff --git a/core/parse-xml.c b/core/parse-xml.c
index 303f974ed..d69545550 100644
--- a/core/parse-xml.c
+++ b/core/parse-xml.c
@@ -3294,7 +3294,7 @@ extern int divinglog_profile(void *handle, int columns, char **data, char **colu
int tank = atoi_n(ptr2+7, 1);
int rbt = atoi_n(ptr2+8, 3) * 60;
- cur_sample->temperature.mkelvin = C_to_mkelvin(temp / 10);
+ cur_sample->temperature.mkelvin = C_to_mkelvin(temp / 10.0f);
cur_sample->pressure[0].mbar = pressure * 100;
if (oldcyl != tank) {
struct gasmix *mix = &cur_dive->cylinder[tank].gasmix;
diff --git a/dives/test40-42.xml b/dives/test40-42.xml
index 340d6a076..ef239fa3c 100644
--- a/dives/test40-42.xml
+++ b/dives/test40-42.xml
@@ -45,10 +45,10 @@
-
+
-
+
@@ -56,7 +56,7 @@
-
+
@@ -67,103 +67,103 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -187,7 +187,7 @@
-
+
@@ -205,7 +205,7 @@
-
+
@@ -229,25 +229,25 @@
-
+
-
+
-
+
-
+
@@ -259,7 +259,7 @@
-
+
@@ -271,7 +271,7 @@
-
+
@@ -307,7 +307,7 @@
-
+
@@ -325,7 +325,7 @@
-
+
@@ -367,7 +367,7 @@
-
+
@@ -379,7 +379,7 @@
-
+
@@ -391,7 +391,7 @@
-
+
@@ -403,31 +403,31 @@
-
+
-
+
-
+
-
+
-
+
@@ -439,7 +439,7 @@
-
+
@@ -457,43 +457,43 @@
-
+
-
+
-
+
-
+
-
+
-
+
-
+
@@ -511,13 +511,13 @@
-
+
-
+
@@ -535,13 +535,13 @@
-
+
-
+
@@ -553,19 +553,19 @@
-
+
-
+
-
+
@@ -577,7 +577,7 @@
-
+
@@ -631,7 +631,7 @@
-
+
@@ -643,13 +643,13 @@
-
+
-
+
@@ -661,25 +661,25 @@
-
+
-
+
-
+
-
+
@@ -721,7 +721,7 @@
-
+
@@ -733,7 +733,7 @@
-
+