From ef652e916daff04bd68387bc187114ae2d729758 Mon Sep 17 00:00:00 2001 From: =?utf8?q?R=C3=A9mi=20Denis-Courmont?= Date: Tue, 17 Mar 2009 20:50:28 +0200 Subject: [PATCH] VCDX: privatize interface callback lock --- modules/access/vcdx/intf.c | 22 ++++++++++++---------- modules/access/vcdx/intf.h | 1 + 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/modules/access/vcdx/intf.c b/modules/access/vcdx/intf.c index 12e61df81a..6cf596dc6b 100644 --- a/modules/access/vcdx/intf.c +++ b/modules/access/vcdx/intf.c @@ -64,6 +64,7 @@ int VCDOpenIntf ( vlc_object_t *p_this ) { return( VLC_EGENERIC ); }; + vlc_mutex_init( &p_intf->p_sys->lock ); p_intf->pf_run = RunIntf; @@ -84,6 +85,7 @@ void VCDCloseIntf ( vlc_object_t *p_this ) var_DelCallback( p_intf->p_libvlc, "key-pressed", KeyEvent, p_intf ); /* Destroy structure */ + vlc_mutex_destroy( &p_intf->p_sys->lock ); free( p_intf->p_sys ); } @@ -128,7 +130,7 @@ RunIntf( intf_thread_t *p_intf ) /* Main loop */ while( vlc_object_alive (p_intf) ) { - vlc_mutex_lock( &p_intf->change_lock ); + vlc_mutex_lock( &p_intf->p_sys->lock ); /* * Have we timed-out in showing a still frame? @@ -287,7 +289,7 @@ RunIntf( intf_thread_t *p_intf ) } - vlc_mutex_unlock( &p_intf->change_lock ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); if( p_vout == NULL ) { @@ -328,7 +330,7 @@ static int InitThread( intf_thread_t * p_intf ) if( p_input == NULL ) return VLC_EGENERIC; - vlc_mutex_lock( &p_intf->change_lock ); + vlc_mutex_lock( &p_intf->p_sys->lock ); p_intf->p_sys->p_input = p_input; p_intf->p_sys->p_vcdplayer = NULL; @@ -337,7 +339,7 @@ static int InitThread( intf_thread_t * p_intf ) p_intf->p_sys->b_click = false; p_intf->p_sys->b_key_pressed = false; - vlc_mutex_unlock( &p_intf->change_lock ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); /* make sure we return a value */ return 0; } @@ -349,11 +351,11 @@ static int KeyEvent( vlc_object_t *p_this, char const *psz_var, vlc_value_t oldval, vlc_value_t newval, void *p_data ) { intf_thread_t *p_intf = (intf_thread_t *)p_data; - vlc_mutex_lock( &p_intf->change_lock ); + vlc_mutex_lock( &p_intf->p_sys->lock ); p_intf->p_sys->b_key_pressed = true; - vlc_mutex_unlock( &p_intf->change_lock ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); return VLC_SUCCESS; } @@ -364,7 +366,7 @@ static int KeyEvent( vlc_object_t *p_this, char const *psz_var, *****************************************************************************/ int vcdIntfStillTime( intf_thread_t *p_intf, uint8_t i_sec ) { - vlc_mutex_lock( &p_intf->change_lock ); + vlc_mutex_lock( &p_intf->p_sys->lock ); p_intf->p_sys->b_still = 1; if( 255 == i_sec ) @@ -375,7 +377,7 @@ int vcdIntfStillTime( intf_thread_t *p_intf, uint8_t i_sec ) { p_intf->p_sys->m_still_time = MILLISECONDS_PER_SEC * i_sec; } - vlc_mutex_unlock( &p_intf->change_lock ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); return VLC_SUCCESS; } @@ -385,10 +387,10 @@ int vcdIntfStillTime( intf_thread_t *p_intf, uint8_t i_sec ) *****************************************************************************/ int vcdIntfResetStillTime( intf_thread_t *p_intf ) { - vlc_mutex_lock( &p_intf->change_lock ); + vlc_mutex_lock( &p_intf->p_sys->lock ); p_intf->p_sys->m_still_time = 0; var_SetInteger( p_intf->p_sys->p_input, "state", PLAYING_S ); - vlc_mutex_unlock( &p_intf->change_lock ); + vlc_mutex_unlock( &p_intf->p_sys->lock ); return VLC_SUCCESS; } diff --git a/modules/access/vcdx/intf.h b/modules/access/vcdx/intf.h index 44a568cbea..fa37bbe30f 100644 --- a/modules/access/vcdx/intf.h +++ b/modules/access/vcdx/intf.h @@ -44,6 +44,7 @@ struct intf_sys_t int control; #endif bool b_click, b_move, b_key_pressed; + vlc_mutex_t lock; }; int vcdIntfStillTime( struct intf_thread_t * p_intf, uint8_t wait_time); -- 2.39.5