aboutsummaryrefslogtreecommitdiffstats
path: root/os/hal/include
diff options
context:
space:
mode:
authorGiovanni Di Sirio <gdisirio@gmail.com>2018-01-02 11:21:11 +0000
committerGiovanni Di Sirio <gdisirio@gmail.com>2018-01-02 11:21:11 +0000
commit84e0ad64f09f16ae8fa37f9221bd292044a7325f (patch)
treee059eee3b09b83d44df0b4b210469296aafd8232 /os/hal/include
parentbb806fe4c18e628b546291dab906928ebdb46627 (diff)
downloadChibiOS-84e0ad64f09f16ae8fa37f9221bd292044a7325f.tar.gz
ChibiOS-84e0ad64f09f16ae8fa37f9221bd292044a7325f.tar.bz2
ChibiOS-84e0ad64f09f16ae8fa37f9221bd292044a7325f.zip
Added check on NULL for callbacks.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@11214 35acf78f-673a-0410-8e92-d51de3d6d3f4
Diffstat (limited to 'os/hal/include')
-rw-r--r--os/hal/include/hal_can.h16
1 files 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) */
/** @} */