From 9afe5d329c0167faea4846a69a81fd3d20a753ca Mon Sep 17 00:00:00 2001 From: chencn Date: Wed, 23 Mar 2016 10:20:32 +0800 Subject: [PATCH] Fixed:Can't register the same timer again at timeout handle function --- kernel/atomtimer.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/kernel/atomtimer.c b/kernel/atomtimer.c index 8f85c46..9bb123b 100755 --- a/kernel/atomtimer.c +++ b/kernel/atomtimer.c @@ -488,6 +488,7 @@ static void atomTimerCallbacks (void) next_ptr = callback_list_head; while (next_ptr) { + saved_next_ptr = next_ptr->next_timer; /* Call the registered callback */ if (next_ptr->cb_func) { @@ -495,7 +496,7 @@ static void atomTimerCallbacks (void) } /* Move on to the next callback in the list */ - next_ptr = next_ptr->next_timer; + next_ptr = saved_next_ptr; } }