]>
git.sesse.net Git - mlt/commit
rtaudio/consumer_rtaudio.cpp: use mutex when changing refresh_count
Fixes Coverity CID 710859: Data race condition (MISSING_LOCK)
Accessing variable "this->refresh_count" (RtAudioConsumer.refresh_count) requires the RtAudioConsumer.refresh_mutex lock.
225 refresh_count = 0;
...
Locking "this->refresh_mutex".
282 pthread_mutex_lock( &refresh_mutex );
283 if ( refresh == 0 && refresh_count <= 0 )
284 {
285 play_video( frame );
286 pthread_cond_wait( &refresh_cond, &refresh_mutex );
287 }
288 mlt_frame_close( frame );
RtAudioConsumer.refresh_count is being accessed with lock "this->refresh_mutex" held.
289 refresh_count --;
290 pthread_mutex_unlock( &refresh_mutex );
...
Locking "rtaudio->refresh_mutex".
561 pthread_mutex_lock( &rtaudio->refresh_mutex );
RtAudioConsumer.refresh_count is being accessed with lock "rtaudio->refresh_mutex" held.
562 rtaudio->refresh_count = rtaudio->refresh_count <= 0 ? 1 : rtaudio->refresh_count + 1;
563 pthread_cond_broadcast( &rtaudio->refresh_cond );
564 pthread_mutex_unlock( &rtaudio->refresh_mutex );