summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2019-02-08 16:36:09 +1100
committerDamien George <damien.p.george@gmail.com>2019-02-08 16:38:09 +1100
commitb546e4b7e9558ea03f461ae1a54bf14e6606aecb (patch)
treede8b7339d909dc1c22a68f1716fc4d8363f60139
parent800871c0cbae9d099cc8ec5e4aa11cb01a8aa4e8 (diff)
stm32/pendsv: Fix NULL pointer when calling pendsv dispatch function.
-rw-r--r--ports/stm32/pendsv.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/ports/stm32/pendsv.c b/ports/stm32/pendsv.c
index a3d04a4ef..ba383a731 100644
--- a/ports/stm32/pendsv.c
+++ b/ports/stm32/pendsv.c
@@ -79,8 +79,9 @@ void pendsv_schedule_dispatch(size_t slot, pendsv_dispatch_t f) {
void pendsv_dispatch_handler(void) {
for (size_t i = 0; i < PENDSV_DISPATCH_NUM_SLOTS; ++i) {
if (pendsv_dispatch_table[i] != NULL) {
+ pendsv_dispatch_t f = pendsv_dispatch_table[i];
pendsv_dispatch_table[i] = NULL;
- pendsv_dispatch_table[i]();
+ f();
}
}
}