mirror of
https://github.com/espressif/ESP8266_RTOS_SDK.git
synced 2025-05-21 17:16:29 +08:00
Merge branch 'bugfix/potential_freertos_crash' into 'master'
fix(ESPCS-924): Fixed a potential freertos crash See merge request sdk/ESP8266_RTOS_SDK!1684
This commit is contained in:
@ -3044,6 +3044,19 @@ BaseType_t xReturn;
|
|||||||
{
|
{
|
||||||
( void ) uxListRemove( &( pxUnblockedTCB->xStateListItem ) );
|
( void ) uxListRemove( &( pxUnblockedTCB->xStateListItem ) );
|
||||||
prvAddTaskToReadyList( pxUnblockedTCB );
|
prvAddTaskToReadyList( pxUnblockedTCB );
|
||||||
|
#if( configUSE_TICKLESS_IDLE != 0 )
|
||||||
|
{
|
||||||
|
/* If a task is blocked on a kernel object then xNextTaskUnblockTime
|
||||||
|
might be set to the blocked task's time out time. If the task is
|
||||||
|
unblocked for a reason other than a timeout xNextTaskUnblockTime is
|
||||||
|
normally left unchanged, because it is automatically reset to a new
|
||||||
|
value when the tick count equals xNextTaskUnblockTime. However if
|
||||||
|
tickless idling is used it might be more important to enter sleep mode
|
||||||
|
at the earliest possible time - so reset xNextTaskUnblockTime here to
|
||||||
|
ensure it is updated at the earliest possible time. */
|
||||||
|
prvResetNextTaskUnblockTime();
|
||||||
|
}
|
||||||
|
#endif
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
@ -3068,20 +3081,6 @@ BaseType_t xReturn;
|
|||||||
xReturn = pdFALSE;
|
xReturn = pdFALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
#if( configUSE_TICKLESS_IDLE != 0 )
|
|
||||||
{
|
|
||||||
/* If a task is blocked on a kernel object then xNextTaskUnblockTime
|
|
||||||
might be set to the blocked task's time out time. If the task is
|
|
||||||
unblocked for a reason other than a timeout xNextTaskUnblockTime is
|
|
||||||
normally left unchanged, because it is automatically reset to a new
|
|
||||||
value when the tick count equals xNextTaskUnblockTime. However if
|
|
||||||
tickless idling is used it might be more important to enter sleep mode
|
|
||||||
at the earliest possible time - so reset xNextTaskUnblockTime here to
|
|
||||||
ensure it is updated at the earliest possible time. */
|
|
||||||
prvResetNextTaskUnblockTime();
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
return xReturn;
|
return xReturn;
|
||||||
}
|
}
|
||||||
/*-----------------------------------------------------------*/
|
/*-----------------------------------------------------------*/
|
||||||
|
Reference in New Issue
Block a user