# include "config.h"
#endif
-#include <vlc/vlc.h>
+#include <vlc_common.h>
#include <vlc_aout.h>
#include <vlc_vout.h>
intf_thread_t* __intf_Create( vlc_object_t *p_this, const char *psz_module )
{
intf_thread_t * p_intf;
- int i;
/* Allocate structure */
p_intf = vlc_object_create( p_this, VLC_OBJECT_INTF );
if( !p_intf )
- {
- msg_Err( p_this, "out of memory" );
return NULL;
- }
p_intf->pf_request_window = NULL;
p_intf->pf_release_window = NULL;
p_intf->pf_control_window = NULL;
- p_intf->b_play = false;
p_intf->b_interaction = false;
p_intf->b_should_run_on_first_thread = false;
{
/* Tell the interface to die */
vlc_object_kill( p_intf );
- vlc_cond_signal( &p_intf->object_wait );
+ vlc_object_signal( p_intf );
vlc_thread_join( p_intf );
}
if( p_intf->pf_run )
p_intf->pf_run( p_intf );
else
- while( vlc_object_lock_and_wait( p_intf ) == 0 );
-
- /* Reset play on start status */
- p_intf->b_play = false;
+ {
+ vlc_object_lock( p_intf );
+ while( vlc_object_alive( p_intf ) )
+ vlc_object_wait( p_intf );
+ vlc_object_unlock( p_intf );
+ }
if( !p_intf->psz_switch_intf )
{
psz_intf = p_intf->psz_switch_intf;
p_intf->psz_switch_intf = NULL;
- vlc_mutex_lock( &p_intf->object_lock );
+ vlc_object_lock( p_intf );
p_intf->b_die = false; /* FIXME */
p_intf->b_dead = false;
- vlc_mutex_unlock( &p_intf->object_lock );
+ vlc_object_unlock( p_intf );
p_intf->psz_intf = psz_intf;
p_intf->p_module = module_Need( p_intf, "interface", psz_intf, 0 );