#include "vlc_playlist.h"
#include "vlc_interface.h"
#include <vlc_charset.h>
+#include <vlc_atomic.h>
#include "item.h"
#include "info.h"
mtime_t i_duration,
int i_type )
{
- libvlc_priv_t *priv = libvlc_priv (p_obj->p_libvlc);
- static vlc_mutex_t input_id_lock = VLC_STATIC_MUTEX;
+ static vlc_atomic_t last_input_id = VLC_ATOMIC_INIT(0);
input_item_t* p_input = malloc( sizeof(input_item_t ) );
if( !p_input )
input_item_Init( p_obj, p_input );
vlc_gc_init( p_input, input_item_Destroy );
- vlc_mutex_lock( &input_id_lock );
- p_input->i_id = ++priv->i_last_input_id;
- vlc_mutex_unlock( &input_id_lock );
+ p_input->i_id = vlc_atomic_inc(&last_input_id);
p_input->b_fixed_name = false;