Browse Source

Fix temperature reporting on OpenBSD

On OpenBSD although the formula is correct due to integer division a
temperature of for example 54 celsius appears as 5. this patch first
treats it as a floating point op before retaining the non decimal digits
dsp 6 years ago
parent
commit
3fc2872d1b
1 changed files with 1 additions and 1 deletions
  1. 1 1
      components/temperature.c

+ 1 - 1
components/temperature.c

@@ -45,7 +45,7 @@
 		}
 		}
 
 
 		/* kelvin to celsius */
 		/* kelvin to celsius */
-		return bprintf("%d", (temp.value - 273150000) / 1E6);
+		return bprintf("%d", (int)((float)(temp.value-273150000) / 1E6));
 	}
 	}
 #elif defined(__FreeBSD__)
 #elif defined(__FreeBSD__)
 	#include <stdio.h>
 	#include <stdio.h>