From 7e93a54c6c65cff58eb42d5f0f81bd9fac42af8d Mon Sep 17 00:00:00 2001 From: Mark Stapp Date: Wed, 31 Aug 2022 11:47:39 -0400 Subject: [PATCH] lib: ensure locals are inited to NULL A couple of pointers in do_thread_cancel() we only inited at the start of the function; make sure they're inited during each iteration of the loop. Signed-off-by: Mark Stapp --- lib/thread.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/thread.c b/lib/thread.c index c3613b5b0e..9eac9b410a 100644 --- a/lib/thread.c +++ b/lib/thread.c @@ -1354,9 +1354,9 @@ static void do_thread_cancel(struct thread_master *master) struct thread_list_head *list = NULL; struct thread **thread_array = NULL; struct thread *thread; - struct cancel_req *cr; struct listnode *ln; + for (ALL_LIST_ELEMENTS_RO(master->cancel_req, ln, cr)) { /* * If this is an event object cancellation, search @@ -1379,6 +1379,9 @@ static void do_thread_cancel(struct thread_master *master) if (!thread) continue; + list = NULL; + thread_array = NULL; + /* Determine the appropriate queue to cancel the thread from */ switch (thread->type) { case THREAD_READ: -- 2.39.5