aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include/icu.h
diff options
context:
space:
mode:
Diffstat (limited to 'os/hal/include/icu.h')
-rw-r--r--os/hal/include/icu.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/os/hal/include/icu.h b/os/hal/include/icu.h
index ef42470cb..7db895fbf 100644
--- a/os/hal/include/icu.h
+++ b/os/hal/include/icu.h
@@ -140,8 +140,10 @@ typedef void (*icucallback_t)(ICUDriver *icup);
* @notapi
*/
#define _icu_isr_invoke_width_cb(icup) { \
- (icup)->state = ICU_IDLE; \
- (icup)->config->width_cb(icup); \
+ if ((icup)->state != ICU_WAITING) { \
+ (icup)->state = ICU_IDLE; \
+ (icup)->config->width_cb(icup); \
+ } \
}
/**