summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXScorpion2 <rcalt2vt@gmail.com>2020-11-30 04:18:19 -0600
committerDrashna Jael're <drashna@live.com>2021-01-12 22:46:05 -0800
commit1375f426a80d97000418d5c480dd701540d4037c (patch)
treede3e82e52adc8326f16a0a2c47ceeeb5f73038bb
parent4d8d69237d0a9e73e1723480e4225c9390533021 (diff)
Fix int wrapping for timer_expired macros and use MAX defines for consistency and clarity (#10996)
-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 52bc1cc671..7ee7feac29 100644
--- a/tmk_core/common/timer.h
+++ b/tmk_core/common/timer.h
@@ -45,8 +45,8 @@ 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)
-#define timer_expired(current, future) (((uint16_t)current - (uint16_t)future) < 0x8000)
-#define timer_expired32(current, future) (((uint32_t)current - (uint32_t)future) < 0x80000000)
+#define timer_expired(current, future) ((uint16_t)(current - future) < UINT16_MAX / 2)
+#define timer_expired32(current, future) ((uint32_t)(current - future) < UINT32_MAX / 2)
#ifdef __cplusplus
}