static void umock_lock_pthreads_acquire_shared()

in src/umock_lock_factory_pthread.c [20:36]


static void umock_lock_pthreads_acquire_shared(UMOCK_C_LOCK_HANDLE lock)
{
    if (lock == NULL)
    {
        /* Codes_SRS_UMOCK_LOCK_FACTORY_PTHREAD_01_010: [ If lock is NULL, umock_lock_pthread_acquire_shared shall return. ]*/
        UMOCK_LOG("Invalid arguments: UMOCK_C_LOCK_HANDLE lock=%p", lock);
    }
    else
    {
        UMOCK_C_LOCK_PTHREAD* umock_c_lock_pthread = (UMOCK_C_LOCK_PTHREAD*)lock;
        /* Codes_SRS_UMOCK_LOCK_FACTORY_PTHREAD_01_005: [ umock_lock_pthread_acquire_shared shall acquire the read lock by calling pthread_rwlock_rdlock. ]*/
        if (pthread_rwlock_rdlock(&umock_c_lock_pthread->rw_lock) != 0)
        {
            UMOCK_LOG("pthread_rwlock_rdlock failed");
        }
    }
}