freertos: Add addition overflow check for stream buffer

Patch from upstream commit d05b9c123f2bf9090bce386a244fc934ae44db5b
This commit is contained in:
Angus Gratton
2021-05-04 16:43:54 +10:00
parent b41d4b0a9c
commit e02439f2de

View File

@@ -256,8 +256,15 @@ static void prvInitialiseNewStreamBuffer( StreamBuffer_t * const pxStreamBuffer,
this is a quirk of the implementation that means otherwise the free this is a quirk of the implementation that means otherwise the free
space would be reported as one byte smaller than would be logically space would be reported as one byte smaller than would be logically
expected. */ expected. */
xBufferSizeBytes++; if( xBufferSizeBytes < ( xBufferSizeBytes + 1 + sizeof( StreamBuffer_t ) ) )
pucAllocatedMemory = ( uint8_t * ) pvPortMalloc( xBufferSizeBytes + sizeof( StreamBuffer_t ) ); /*lint !e9079 malloc() only returns void*. */ {
xBufferSizeBytes++;
pucAllocatedMemory = ( uint8_t * ) pvPortMalloc( xBufferSizeBytes + sizeof( StreamBuffer_t ) ); /*lint !e9079 malloc() only returns void*. */
}
else
{
pucAllocatedMemory = NULL;
}
if( pucAllocatedMemory != NULL ) if( pucAllocatedMemory != NULL )
{ {