diff --git a/components/freertos/esp_additions/task_snapshot.c b/components/freertos/esp_additions/task_snapshot.c index 1244118b60..8c394126e9 100644 --- a/components/freertos/esp_additions/task_snapshot.c +++ b/components/freertos/esp_additions/task_snapshot.c @@ -116,13 +116,15 @@ return NULL; } - void vTaskGetSnapshot( TaskHandle_t pxTask, TaskSnapshot_t *pxTaskSnapshot ) - { - configASSERT( portVALID_TCB_MEM(pxTask) ); - configASSERT( pxTaskSnapshot != NULL ); + BaseType_t vTaskGetSnapshot( TaskHandle_t pxTask, TaskSnapshot_t *pxTaskSnapshot ) +{ + if (portVALID_TCB_MEM(pxTask) == false || pxTaskSnapshot == NULL) { + return pdFALSE; + } pxTaskSnapshot->pxTCB = (void*) pxTask; pxTaskSnapshot->pxTopOfStack = pxTCBGetTopOfStack((void*) pxTask); pxTaskSnapshot->pxEndOfStack = pxTCBGetEndOfStack((void*) pxTask); + return pdTRUE; } TaskHandle_t pxTaskGetNext( TaskHandle_t pxTask ) diff --git a/components/freertos/include/esp_additions/freertos/task_snapshot.h b/components/freertos/include/esp_additions/freertos/task_snapshot.h index 1ad04cce69..635a515025 100644 --- a/components/freertos/include/esp_additions/freertos/task_snapshot.h +++ b/components/freertos/include/esp_additions/freertos/task_snapshot.h @@ -80,8 +80,9 @@ TaskHandle_t pxTaskGetNext( TaskHandle_t pxTask ); * @note This function should not be used while FreeRTOS is running (as it doesn't acquire any locks). * @param pxTask task handle. * @param pxTaskSnapshot address of TaskSnapshot_t structure to fill. + * @return pdTRUE if operation was successful else pdFALSE */ -void vTaskGetSnapshot( TaskHandle_t pxTask, TaskSnapshot_t *pxTaskSnapshot ); +BaseType_t vTaskGetSnapshot( TaskHandle_t pxTask, TaskSnapshot_t *pxTaskSnapshot ); #ifdef __cplusplus }