MISRA Rule 13.3 fixes

This commit is contained in:
bradleysmith23 2024-02-06 15:42:13 -08:00
parent c3a9b0b994
commit 3ba910ca33
3 changed files with 41 additions and 20 deletions

View file

@ -326,7 +326,9 @@ typedef struct xLIST
} \
\
( pxItemToRemove )->pxContainer = NULL; \
( pxList->uxNumberOfItems )--; \
UBaseType_t uxNumberOfItems = ( pxList->uxNumberOfItems ); \
uxNumberOfItems--; \
( pxList->uxNumberOfItems ) = uxNumberOfItems; \
} while( 0 )
/*
@ -363,17 +365,19 @@ typedef struct xLIST
\
/* Insert a new list item into ( pxList ), but rather than sort the list, \
* makes the new list item the last item to be removed by a call to \
* listGET_OWNER_OF_NEXT_ENTRY(). */ \
( pxNewListItem )->pxNext = pxIndex; \
( pxNewListItem )->pxPrevious = pxIndex->pxPrevious; \
\
pxIndex->pxPrevious->pxNext = ( pxNewListItem ); \
pxIndex->pxPrevious = ( pxNewListItem ); \
\
/* Remember which list the item is in. */ \
( pxNewListItem )->pxContainer = ( pxList ); \
\
( ( pxList )->uxNumberOfItems )++; \
* listGET_OWNER_OF_NEXT_ENTRY(). */ \
( pxNewListItem )->pxNext = pxIndex; \
( pxNewListItem )->pxPrevious = pxIndex->pxPrevious; \
\
pxIndex->pxPrevious->pxNext = ( pxNewListItem ); \
pxIndex->pxPrevious = ( pxNewListItem ); \
\
/* Remember which list the item is in. */ \
( pxNewListItem )->pxContainer = ( pxList ); \
\
UBaseType_t uxNumberOfItems = ( ( pxList )->uxNumberOfItems ); \
uxNumberOfItems++; \
( ( pxList )->uxNumberOfItems ) = uxNumberOfItems; \
} while( 0 )
/*

12
list.c
View file

@ -130,7 +130,9 @@ void vListInsertEnd( List_t * const pxList,
/* Remember which list the item is in. */
pxNewListItem->pxContainer = pxList;
( pxList->uxNumberOfItems )++;
UBaseType_t uxNumberOfItems = ( pxList->uxNumberOfItems );
uxNumberOfItems++;
( pxList->uxNumberOfItems ) = uxNumberOfItems;
traceRETURN_vListInsertEnd();
}
@ -205,7 +207,9 @@ void vListInsert( List_t * const pxList,
* item later. */
pxNewListItem->pxContainer = pxList;
( pxList->uxNumberOfItems )++;
UBaseType_t uxNumberOfItems = ( pxList->uxNumberOfItems );
uxNumberOfItems++;
( pxList->uxNumberOfItems ) = uxNumberOfItems;
traceRETURN_vListInsert();
}
@ -238,7 +242,9 @@ UBaseType_t uxListRemove( ListItem_t * const pxItemToRemove )
}
pxItemToRemove->pxContainer = NULL;
( pxList->uxNumberOfItems )--;
UBaseType_t uxNumberOfItems = ( pxList->uxNumberOfItems );
uxNumberOfItems--;
( pxList->uxNumberOfItems ) = uxNumberOfItems;
traceRETURN_uxListRemove( pxList->uxNumberOfItems );

21
tasks.c
View file

@ -255,7 +255,9 @@
pxTemp = pxDelayedTaskList; \
pxDelayedTaskList = pxOverflowDelayedTaskList; \
pxOverflowDelayedTaskList = pxTemp; \
xNumOfOverflows++; \
BaseType_t xCurrentOverflows = xNumOfOverflows; \
xCurrentOverflows++; \
xNumOfOverflows = xCurrentOverflows; \
prvResetNextTaskUnblockTime(); \
} while( 0 )
@ -2021,7 +2023,9 @@ static void prvInitialiseNewTask( TaskFunction_t pxTaskCode,
* updated. */
taskENTER_CRITICAL();
{
uxCurrentNumberOfTasks++;
UBaseType_t uxNumberOfTasks = uxCurrentNumberOfTasks;
uxNumberOfTasks++;
uxCurrentNumberOfTasks = uxNumberOfTasks;
if( pxCurrentTCB == NULL )
{
@ -3807,7 +3811,9 @@ void vTaskSuspendAll( void )
/* The scheduler is suspended if uxSchedulerSuspended is non-zero. An increment
* is used to allow calls to vTaskSuspendAll() to nest. */
++uxSchedulerSuspended;
UBaseType_t uxSchedulerSuspendedVal = uxSchedulerSuspended;
uxSchedulerSuspendedVal++;
uxSchedulerSuspended = uxSchedulerSuspendedVal;
/* Enforces ordering for ports and optimised compilers that may otherwise place
* the above increment elsewhere. */
@ -3964,7 +3970,10 @@ BaseType_t xTaskResumeAll( void )
* previous call to vTaskSuspendAll(). */
configASSERT( uxSchedulerSuspended != 0U );
--uxSchedulerSuspended;
UBaseType_t uxSchedulerSuspendedVal = uxSchedulerSuspended;
uxSchedulerSuspendedVal--;
uxSchedulerSuspended = uxSchedulerSuspendedVal;
portRELEASE_TASK_LOCK();
if( uxSchedulerSuspended == ( UBaseType_t ) 0U )
@ -4964,7 +4973,9 @@ BaseType_t xTaskIncrementTick( void )
}
else
{
++xPendedTicks;
TickType_t xPendedCounts = xPendedTicks;
xPendedCounts++;
xPendedTicks = xPendedCounts;
/* The tick hook gets called at regular intervals, even if the
* scheduler is locked. */