[Mlt-devel] [PATCH 7/8] mlt_consumer_start(): get mutex before accessing put_active
Brought to you by:
ddennedy,
lilo_booter
From: Mikko R. <mik...@ik...> - 2012-07-24 18:11:26
|
Fixes Coverity CID 709355: Data race condition (MISSING_LOCK) Accessing variable "self->put_active" (mlt_consumer_s.put_active) requires the mlt_consumer_s.put_mutex lock. 411 self->put_active = 1; --- src/framework/mlt_consumer.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/framework/mlt_consumer.c b/src/framework/mlt_consumer.c index 08f990f..5ce2532 100644 --- a/src/framework/mlt_consumer.c +++ b/src/framework/mlt_consumer.c @@ -414,8 +414,10 @@ int mlt_consumer_start( mlt_consumer self ) char *test_card = mlt_properties_get( properties, "test_card" ); // Just to make sure nothing is hanging around... + pthread_mutex_lock( &self->put_mutex ); self->put = NULL; self->put_active = 1; + pthread_mutex_unlock( &self->put_mutex ); // Deal with it now. if ( test_card != NULL ) -- 1.7.10.4 |