aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGravatar XScorpion2 <rcalt2vt@gmail.com>2019-09-22 09:52:33 -0500
committerGravatar fauxpark <fauxpark@gmail.com>2019-09-23 00:52:33 +1000
commit2f49cae9bcbdd94431659727ef75cfd30f557da8 (patch)
tree5ad635c974079adb92f1465e325252f8cc0ef22f
parent29d7f9b1632fb15a7849762aa27b7f81af29c2b2 (diff)
downloadqmk_firmware-2f49cae9bcbdd94431659727ef75cfd30f557da8.tar.gz
Fixing wrapping math logic for timer_expired functions (#6746)
-rw-r--r--tmk_core/common/timer.h4
1 files changed, 2 insertions, 2 deletions
diff --git a/tmk_core/common/timer.h b/tmk_core/common/timer.h
index 853cb9839..378cf7892 100644
--- a/tmk_core/common/timer.h
+++ b/tmk_core/common/timer.h
@@ -45,9 +45,9 @@ uint16_t timer_elapsed(uint16_t last);
uint32_t timer_elapsed32(uint32_t last);
// Utility functions to check if a future time has expired & autmatically handle time wrapping if checked / reset frequently (half of max value)
-inline bool timer_expired(uint16_t current, uint16_t last) { return current - last < 0x8000; }
+inline bool timer_expired(uint16_t current, uint16_t future) { return (uint16_t)(current - future) < 0x8000; }
-inline bool timer_expired32(uint32_t current, uint32_t future) { return current - future < 0x80000000; }
+inline bool timer_expired32(uint32_t current, uint32_t future) { return (uint32_t)(current - future) < 0x80000000; }
#ifdef __cplusplus
}