Fix GCC/Posix port compilation on FreeBSD (#1239)

On FreeBSD pthread_once_t is a struct and cast is required.
Otherwise there's compilation error:
../../mocks/freertos/port.c:261:23: error: expected expression
    hSigSetupThread = PTHREAD_ONCE_INIT;
                      ^
PTHREAD_ONCE_INIT is defined as: { PTHREAD_NEEDS_INIT, NULL } on FreeBSD
This commit is contained in:
Jakub Tymejczyk 2025-02-06 13:25:30 +01:00
parent ae0a5913c8
commit 7324ad53c3

View file

@ -303,8 +303,8 @@ BaseType_t xPortStartScheduler( void )
memset( ( void * ) &hSigSetupThread.__opaque, 0, sizeof( hSigSetupThread.__opaque ) ); memset( ( void * ) &hSigSetupThread.__opaque, 0, sizeof( hSigSetupThread.__opaque ) );
memset( ( void * ) &hThreadKeyOnce.__opaque, 0, sizeof( hThreadKeyOnce.__opaque ) ); memset( ( void * ) &hThreadKeyOnce.__opaque, 0, sizeof( hThreadKeyOnce.__opaque ) );
#else /* Linux PTHREAD library*/ #else /* Linux PTHREAD library*/
hSigSetupThread = PTHREAD_ONCE_INIT; hSigSetupThread = ( pthread_once_t ) PTHREAD_ONCE_INIT;
hThreadKeyOnce = PTHREAD_ONCE_INIT; hThreadKeyOnce = ( pthread_once_t ) PTHREAD_ONCE_INIT;
#endif /* __APPLE__*/ #endif /* __APPLE__*/
/* Restore original signal mask. */ /* Restore original signal mask. */