return p_interaction;
}
+void interaction_Destroy( interaction_t *p_interaction )
+{
+ if( !p_interaction )
+ return;
+
+ vlc_object_kill( p_interaction );
+ vlc_thread_join( p_interaction );
+ vlc_object_release( p_interaction );
+}
+
/**********************************************************************
* The following functions are local
**********************************************************************/
* Interaction
**********************************************************************/
-/* release via vlc_object_release() */
interaction_t * interaction_Init( libvlc_int_t *p_libvlc );
+void interaction_Destroy( interaction_t * );
#endif
/* Free interaction */
msg_Dbg( p_libvlc, "removing interaction" );
- vlc_object_release( priv->p_interaction );
+ interaction_Destroy( priv->p_interaction );
/* Free video outputs */
msg_Dbg( p_libvlc, "removing all video outputs" );