return i_ret;
}
+#undef vlc_thread_set_priority
/*****************************************************************************
* vlc_thread_set_priority: set the priority of the current thread when we
* couldn't set it in vlc_thread_create (for instance for the main thread)
*****************************************************************************/
-int __vlc_thread_set_priority( vlc_object_t *p_this, const char * psz_file,
- int i_line, int i_priority )
+int vlc_thread_set_priority( vlc_object_t *p_this, const char * psz_file,
+ int i_line, int i_priority )
{
vlc_object_internals_t *p_priv = vlc_internals( p_this );
#if defined( LIBVLC_USE_PTHREAD )
# ifndef __APPLE__
- if( config_GetInt( p_this, "rt-priority" ) > 0 )
+ if( var_InheritBool( p_this, "rt-priority" ) )
# endif
{
int i_error, i_policy;
memset( ¶m, 0, sizeof(struct sched_param) );
if( config_GetType( p_this, "rt-offset" ) )
- i_priority += config_GetInt( p_this, "rt-offset" );
+ i_priority += var_InheritInteger( p_this, "rt-offset" );
if( i_priority <= 0 )
{
param.sched_priority = (-1) * i_priority;
return 0;
}
+#undef vlc_thread_join
/*****************************************************************************
* vlc_thread_join: wait until a thread exits, inner version
*****************************************************************************/
-void __vlc_thread_join( vlc_object_t *p_this )
+void vlc_thread_join( vlc_object_t *p_this )
{
vlc_object_internals_t *p_priv = vlc_internals( p_this );
if (priv->b_thread)
vlc_cancel (priv->thread_id);
}
+
+/*** Global locks ***/
+
+void vlc_global_mutex (unsigned n, bool acquire)
+{
+ static vlc_mutex_t locks[] = {
+ VLC_STATIC_MUTEX,
+ VLC_STATIC_MUTEX,
+ VLC_STATIC_MUTEX,
+ };
+ assert (n < (sizeof (locks) / sizeof (locks[0])));
+ vlc_mutex_t *lock = locks + n;
+
+ if (acquire)
+ vlc_mutex_lock (lock);
+ else
+ vlc_mutex_unlock (lock);
+
+ /* Compile-time assertion ;-) */
+ char enough_locks[(sizeof (locks) / sizeof (locks[0])) - VLC_MAX_MUTEX];
+ (void) enough_locks;
+}