From 1a89d1c9c397cf967ae929d9da8c71842a22f82c Mon Sep 17 00:00:00 2001 From: Kody Stribrny Date: Fri, 28 Nov 2025 12:30:39 -0800 Subject: [PATCH] [Fix] Reset correct priority on disinherit timeout This commit corrects vTaskPriorityDisinheritAfterTimeout to reset the previously inherited priority when the task disiheriting timeout was the only task at that priority. Without this change the ready list for the inherited priority will remain set when no task is ready at that priority. This can have consequences later as the ready priority flags are assumed to be accurate. --- tasks.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks.c b/tasks.c index 1e6ecdc9ed..20a88b024d 100644 --- a/tasks.c +++ b/tasks.c @@ -6906,7 +6906,7 @@ static void prvResetNextTaskUnblockTime( void ) /* It is known that the task is in its ready list so * there is no need to check again and the port level * reset macro can be called directly. */ - portRESET_READY_PRIORITY( pxTCB->uxPriority, uxTopReadyPriority ); + portRESET_READY_PRIORITY( uxPriorityUsedOnEntry, uxTopReadyPriority ); } else {