X-Git-Url: https://git.xinqibao.xyz/slstatus.git/blobdiff_plain/062f33f8742c645a3b436f609a19219106a8af75..609ef3aa1f6c0a47822d425dc6bb0744042ca038:/components/temperature.c?ds=sidebyside diff --git a/components/temperature.c b/components/temperature.c index 32eb691..2c57853 100644 --- a/components/temperature.c +++ b/components/temperature.c @@ -4,18 +4,21 @@ #include "../util.h" #if defined(__linux__) + #include + const char * temp(const char *file) { - int temp; + uint64_t temp; + + if(pscanf(file, "%" PRIu64, &temp) != 1) { + return NULL; + } - return (pscanf(file, "%d", &temp) == 1) ? - bprintf("%d°C", temp / 1000) : NULL; + return bprintf("%" PRIu64, temp / 1000); } #elif defined(__OpenBSD__) - #include #include - #include #include /* before for struct timeval */ #include #include @@ -41,6 +44,6 @@ } /* kelvin to celsius */ - return bprintf("%d°C", (temp.value - 273150000) / 1000000); + return bprintf("%d", (temp.value - 273150000) / 1E6); } #endif