From 84e0ad64f09f16ae8fa37f9221bd292044a7325f Mon Sep 17 00:00:00 2001 From: Giovanni Di Sirio Date: Tue, 2 Jan 2018 11:21:11 +0000 Subject: Added check on NULL for callbacks. git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11214 35acf78f-673a-0410-8e92-d51de3d6d3f4 --- os/hal/include/hal_can.h | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/os/hal/include/hal_can.h b/os/hal/include/hal_can.h index 16b487d46..9a698868d 100644 --- a/os/hal/include/hal_can.h +++ b/os/hal/include/hal_can.h @@ -176,25 +176,33 @@ typedef enum { } #else /* defined(CAN_ENFORCE_USE_CALLBACKS) */ #define _can_tx_empty_isr(canp, flags) { \ - (canp)->txempty_cb(canp, flags); \ + if ((canp)->txempty_cb != NULL) { \ + (canp)->txempty_cb(canp, flags); \ + } \ osalSysLockFromISR(); \ osalThreadDequeueAllI(&(canp)->txqueue, MSG_OK); \ osalSysUnlockFromISR(); \ } #define _can_rx_full_isr(canp, flags) { \ - (canp)->rxfull_cb(canp, flags); \ + if ((canp)->rxfull_cb != NULL) { \ + (canp)->rxfull_cb(canp, flags); \ + } \ osalSysLockFromISR(); \ osalThreadDequeueAllI(&(canp)->rxqueue, MSG_OK); \ osalSysUnlockFromISR(); \ } #define _can_wakeup_isr(canp) { \ - (canp)->wakeup_cb(canp, 0U); \ + if ((canp)->wakeup_cb != NULL) { \ + (canp)->wakeup_cb(canp, 0U); \ + } \ } #define _can_error_isr(canp, flags) { \ - (canp)->error_cb(canp, flags); \ + if ((canp)->error_cb != NULL) { \ + (canp)->error_cb(canp, flags); \ + } \ } #endif /* defined(CAN_ENFORCE_USE_CALLBACKS) */ /** @} */ -- cgit v1.2.3