counter_t **pp_timers; ///< Array of all timers
vlc_mutex_t config_lock; ///< Lock for the config file
-#ifdef __APPLE__
- vlc_mutex_t quicktime_lock; ///< QT is not thread safe on OSX
-#endif
/* Structure storing the action name / key associations */
struct hotkey
return VLC_EGENERIC;
}
- /* Damn QT isn't thread safe. so keep a lock in the p_libvlc object */
- vlc_mutex_lock( &p_vout->p_libvlc->quicktime_lock );
+ /* Damn QT isn't thread safe, so keep a process-wide lock */
+ vlc_mutex_t *p_qtlock = var_AcquireMutex( "quicktime_mutex" );
/* Can we find the right chroma ? */
if( p_vout->p_sys->b_cpu_has_simd )
err = FindCodec( kYUV420CodecType, bestSpeedCodec,
nil, &p_vout->p_sys->img_dc );
}
- vlc_mutex_unlock( &p_vout->p_libvlc->quicktime_lock );
+ vlc_mutex_unlock( p_qtlock );
if( err == noErr && p_vout->p_sys->img_dc != 0 )
{
vlc_mutex_init( p_libvlc, &p_libvlc->timer_lock );
vlc_mutex_init( p_libvlc, &p_libvlc->config_lock );
#ifdef __APPLE__
- vlc_mutex_init( p_libvlc, &p_libvlc->quicktime_lock );
vlc_thread_set_priority( p_libvlc, VLC_THREAD_PRIORITY_LOW );
#endif
/* Store data for the non-reentrant API */