@@ -712,7 +712,7 @@ _dispatch_thread_semaphore_create(void)
712712 }
713713 return s4 ;
714714#elif USE_POSIX_SEM
715- sem_t * s4 = malloc ( sizeof (sem_t ));
715+ sem_t * s4 = _dispatch_calloc ( 1ul , sizeof (sem_t ));
716716 int ret = sem_init (s4 , 0 , 0 );
717717 DISPATCH_SEMAPHORE_VERIFY_RET (ret );
718718 return (_dispatch_thread_semaphore_t )s4 ;
@@ -738,7 +738,7 @@ _dispatch_thread_semaphore_dispose(_dispatch_thread_semaphore_t sema)
738738 DISPATCH_VERIFY_MIG (kr );
739739 DISPATCH_SEMAPHORE_VERIFY_KR (kr );
740740#elif USE_POSIX_SEM
741- sem_t * s4 = (sem_t * )sema ;
741+ sem_t * s4 = (sem_t * )sema ;
742742 int ret = sem_destroy (s4 );
743743 free (s4 );
744744 DISPATCH_SEMAPHORE_VERIFY_RET (ret );
@@ -763,7 +763,7 @@ _dispatch_thread_semaphore_signal(_dispatch_thread_semaphore_t sema)
763763 kern_return_t kr = semaphore_signal (s4 );
764764 DISPATCH_SEMAPHORE_VERIFY_KR (kr );
765765#elif USE_POSIX_SEM
766- sem_t * s4 = (sem_t * )sema ;
766+ sem_t * s4 = (sem_t * )sema ;
767767 int ret = sem_post (s4 );
768768 DISPATCH_SEMAPHORE_VERIFY_RET (ret );
769769#elif USE_WIN32_SEM
@@ -789,7 +789,7 @@ _dispatch_thread_semaphore_wait(_dispatch_thread_semaphore_t sema)
789789 } while (slowpath (kr == KERN_ABORTED ));
790790 DISPATCH_SEMAPHORE_VERIFY_KR (kr );
791791#elif USE_POSIX_SEM
792- sem_t * s4 = (sem_t * )sema ;
792+ sem_t * s4 = (sem_t * )sema ;
793793 int ret ;
794794 do {
795795 ret = sem_wait (s4 );
0 commit comments