• Max Kellermann's avatar
    DecoderControl: convert mutex and client_cond to a reference · 1ad2475f
    Max Kellermann authored
    Share the Mutex between the DecoderThread and the PlayerThread.  This
    simplifies synchronization between the two threads and fixes a freeze
    problem: while the PlayerThread waits for the DeocderThread, it cannot
    answer requests from the main thread, and the main thread will block
    until the DecoderThread finishes.
    1ad2475f
Name
Last commit
Last update
..
AudioCompress Loading commit data...
archive Loading commit data...
command Loading commit data...
cue Loading commit data...
db Loading commit data...
decoder Loading commit data...
encoder Loading commit data...
event Loading commit data...
filter Loading commit data...
fs Loading commit data...
input Loading commit data...
mixer Loading commit data...
output Loading commit data...
pcm Loading commit data...
playlist Loading commit data...
protocol Loading commit data...
system Loading commit data...
tag Loading commit data...
thread Loading commit data...
util Loading commit data...
win Loading commit data...
ArchiveDomain.cxx Loading commit data...
ArchiveDomain.hxx Loading commit data...
ArchiveFile.hxx Loading commit data...
ArchiveList.cxx Loading commit data...
ArchiveList.hxx Loading commit data...
ArchiveLookup.cxx Loading commit data...
ArchiveLookup.hxx Loading commit data...
ArchivePlugin.cxx Loading commit data...
ArchivePlugin.hxx Loading commit data...
ArchiveVisitor.hxx Loading commit data...
AudioConfig.cxx Loading commit data...
AudioConfig.hxx Loading commit data...
AudioFormat.cxx Loading commit data...
AudioFormat.hxx Loading commit data...
AudioParser.cxx Loading commit data...
AudioParser.hxx Loading commit data...
AvahiPoll.cxx Loading commit data...
AvahiPoll.hxx Loading commit data...
CheckAudioFormat.cxx Loading commit data...
CheckAudioFormat.hxx Loading commit data...
Client.cxx Loading commit data...
Client.hxx Loading commit data...
ClientEvent.cxx Loading commit data...
ClientExpire.cxx Loading commit data...
ClientFile.cxx Loading commit data...
ClientFile.hxx Loading commit data...
ClientGlobal.cxx Loading commit data...
ClientIdle.cxx Loading commit data...
ClientInternal.hxx Loading commit data...
ClientList.cxx Loading commit data...
ClientList.hxx Loading commit data...
ClientMessage.cxx Loading commit data...
ClientMessage.hxx Loading commit data...
ClientNew.cxx Loading commit data...
ClientProcess.cxx Loading commit data...
ClientRead.cxx Loading commit data...
ClientSubscribe.cxx Loading commit data...
ClientWrite.cxx Loading commit data...
CommandLine.cxx Loading commit data...
CommandLine.hxx Loading commit data...
Compiler.h Loading commit data...
ConfigData.cxx Loading commit data...
ConfigData.hxx Loading commit data...
ConfigDefaults.hxx Loading commit data...
ConfigError.cxx Loading commit data...
ConfigError.hxx Loading commit data...
ConfigFile.cxx Loading commit data...
ConfigFile.hxx Loading commit data...
ConfigGlobal.cxx Loading commit data...
ConfigGlobal.hxx Loading commit data...
ConfigOption.hxx Loading commit data...
ConfigParser.cxx Loading commit data...
ConfigParser.hxx Loading commit data...
ConfigPath.cxx Loading commit data...
ConfigPath.hxx Loading commit data...
ConfigTemplates.cxx Loading commit data...
ConfigTemplates.hxx Loading commit data...
CrossFade.cxx Loading commit data...
CrossFade.hxx Loading commit data...
Daemon.cxx Loading commit data...
Daemon.hxx Loading commit data...
DatabaseError.cxx Loading commit data...
DatabaseError.hxx Loading commit data...
DatabaseGlue.cxx Loading commit data...
DatabaseGlue.hxx Loading commit data...
DatabaseHelpers.cxx Loading commit data...
DatabaseHelpers.hxx Loading commit data...
DatabaseLock.cxx Loading commit data...
DatabaseLock.hxx Loading commit data...
DatabasePlaylist.cxx Loading commit data...
DatabasePlaylist.hxx Loading commit data...
DatabasePlugin.hxx Loading commit data...
DatabasePrint.cxx Loading commit data...
DatabasePrint.hxx Loading commit data...
DatabaseQueue.cxx Loading commit data...
DatabaseQueue.hxx Loading commit data...
DatabaseRegistry.cxx Loading commit data...
DatabaseRegistry.hxx Loading commit data...
DatabaseSave.cxx Loading commit data...
DatabaseSave.hxx Loading commit data...
DatabaseSelection.cxx Loading commit data...
DatabaseSelection.hxx Loading commit data...
DatabaseSimple.hxx Loading commit data...
DatabaseVisitor.hxx Loading commit data...
DecoderAPI.cxx Loading commit data...
DecoderAPI.hxx Loading commit data...
DecoderBuffer.cxx Loading commit data...
DecoderBuffer.hxx Loading commit data...
DecoderCommand.hxx Loading commit data...
DecoderControl.cxx Loading commit data...
DecoderControl.hxx Loading commit data...
DecoderError.cxx Loading commit data...
DecoderError.hxx Loading commit data...
DecoderInternal.cxx Loading commit data...
DecoderInternal.hxx Loading commit data...
DecoderList.cxx Loading commit data...
DecoderList.hxx Loading commit data...
DecoderPlugin.cxx Loading commit data...
DecoderPlugin.hxx Loading commit data...
DecoderPrint.cxx Loading commit data...
DecoderPrint.hxx Loading commit data...
DecoderThread.cxx Loading commit data...
DecoderThread.hxx Loading commit data...
DespotifyUtils.cxx Loading commit data...
DespotifyUtils.hxx Loading commit data...
Directory.cxx Loading commit data...
Directory.hxx Loading commit data...
DirectorySave.cxx Loading commit data...
DirectorySave.hxx Loading commit data...
EncoderAPI.hxx Loading commit data...
EncoderList.cxx Loading commit data...
EncoderList.hxx Loading commit data...
EncoderPlugin.hxx Loading commit data...
ExcludeList.cxx Loading commit data...
ExcludeList.hxx Loading commit data...
FilterConfig.cxx Loading commit data...
FilterConfig.hxx Loading commit data...
FilterInternal.hxx Loading commit data...
FilterPlugin.cxx Loading commit data...
FilterPlugin.hxx Loading commit data...
FilterRegistry.cxx Loading commit data...
FilterRegistry.hxx Loading commit data...
GlobalEvents.cxx Loading commit data...
GlobalEvents.hxx Loading commit data...
IOThread.cxx Loading commit data...
IOThread.hxx Loading commit data...
IcyMetaDataParser.cxx Loading commit data...
IcyMetaDataParser.hxx Loading commit data...
IcyMetaDataServer.cxx Loading commit data...
IcyMetaDataServer.hxx Loading commit data...
IdTable.hxx Loading commit data...
Idle.cxx Loading commit data...
Idle.hxx Loading commit data...
InotifyDomain.cxx Loading commit data...
InotifyDomain.hxx Loading commit data...
InotifyQueue.cxx Loading commit data...
InotifyQueue.hxx Loading commit data...
InotifySource.cxx Loading commit data...
InotifySource.hxx Loading commit data...
InotifyUpdate.cxx Loading commit data...
InotifyUpdate.hxx Loading commit data...
InputInit.cxx Loading commit data...
InputInit.hxx Loading commit data...
InputPlugin.hxx Loading commit data...
InputRegistry.cxx Loading commit data...
InputRegistry.hxx Loading commit data...
InputStream.cxx Loading commit data...
InputStream.hxx Loading commit data...
Instance.cxx Loading commit data...
Instance.hxx Loading commit data...
Listen.cxx Loading commit data...
Listen.hxx Loading commit data...
Log.cxx Loading commit data...
Log.hxx Loading commit data...
LogInit.cxx Loading commit data...
LogInit.hxx Loading commit data...
LogV.hxx Loading commit data...
Main.cxx Loading commit data...
Main.hxx Loading commit data...
Mapper.cxx Loading commit data...
Mapper.hxx Loading commit data...
MemorySongEnumerator.cxx Loading commit data...
MemorySongEnumerator.hxx Loading commit data...
MixRampInfo.hxx Loading commit data...
MixerAll.cxx Loading commit data...
MixerAll.hxx Loading commit data...
MixerControl.cxx Loading commit data...
MixerControl.hxx Loading commit data...
MixerInternal.hxx Loading commit data...
MixerList.hxx Loading commit data...
MixerPlugin.hxx Loading commit data...
MixerType.cxx Loading commit data...
MixerType.hxx Loading commit data...
MusicBuffer.cxx Loading commit data...
MusicBuffer.hxx Loading commit data...
MusicChunk.cxx Loading commit data...
MusicChunk.hxx Loading commit data...
MusicPipe.cxx Loading commit data...
MusicPipe.hxx Loading commit data...
OutputAPI.hxx Loading commit data...
OutputAll.cxx Loading commit data...
OutputAll.hxx Loading commit data...
OutputCommand.cxx Loading commit data...
OutputCommand.hxx Loading commit data...
OutputControl.cxx Loading commit data...
OutputControl.hxx Loading commit data...
OutputError.cxx Loading commit data...
OutputError.hxx Loading commit data...
OutputFinish.cxx Loading commit data...
OutputInit.cxx Loading commit data...
OutputInternal.hxx Loading commit data...
OutputList.cxx Loading commit data...
OutputList.hxx Loading commit data...
OutputPlugin.cxx Loading commit data...
OutputPlugin.hxx Loading commit data...
OutputPrint.cxx Loading commit data...
OutputPrint.hxx Loading commit data...
OutputState.cxx Loading commit data...
OutputState.hxx Loading commit data...
OutputThread.cxx Loading commit data...
OutputThread.hxx Loading commit data...
Page.cxx Loading commit data...
Page.hxx Loading commit data...
Partition.cxx Loading commit data...
Partition.hxx Loading commit data...
Permission.cxx Loading commit data...
Permission.hxx Loading commit data...
PlayerControl.cxx Loading commit data...
PlayerControl.hxx Loading commit data...
PlayerThread.cxx Loading commit data...
PlayerThread.hxx Loading commit data...
Playlist.cxx Loading commit data...
Playlist.hxx Loading commit data...
PlaylistAny.cxx Loading commit data...
PlaylistAny.hxx Loading commit data...
PlaylistControl.cxx Loading commit data...
PlaylistDatabase.cxx Loading commit data...
PlaylistDatabase.hxx Loading commit data...
PlaylistEdit.cxx Loading commit data...
PlaylistError.cxx Loading commit data...
PlaylistError.hxx Loading commit data...
PlaylistFile.cxx Loading commit data...
PlaylistFile.hxx Loading commit data...
PlaylistGlobal.cxx Loading commit data...
PlaylistGlobal.hxx Loading commit data...
PlaylistInfo.hxx Loading commit data...
PlaylistMapper.cxx Loading commit data...
PlaylistMapper.hxx Loading commit data...
PlaylistPlugin.hxx Loading commit data...
PlaylistPrint.cxx Loading commit data...
PlaylistPrint.hxx Loading commit data...
PlaylistQueue.cxx Loading commit data...
PlaylistQueue.hxx Loading commit data...
PlaylistRegistry.cxx Loading commit data...
PlaylistRegistry.hxx Loading commit data...
PlaylistSave.cxx Loading commit data...
PlaylistSave.hxx Loading commit data...
PlaylistSong.cxx Loading commit data...
PlaylistSong.hxx Loading commit data...
PlaylistState.cxx Loading commit data...
PlaylistState.hxx Loading commit data...
PlaylistUpdate.cxx Loading commit data...
PlaylistVector.cxx Loading commit data...
PlaylistVector.hxx Loading commit data...
Queue.cxx Loading commit data...
Queue.hxx Loading commit data...
QueuePrint.cxx Loading commit data...
QueuePrint.hxx Loading commit data...
QueueSave.cxx Loading commit data...
QueueSave.hxx Loading commit data...
ReplayGainConfig.cxx Loading commit data...
ReplayGainConfig.hxx Loading commit data...
ReplayGainInfo.cxx Loading commit data...
ReplayGainInfo.hxx Loading commit data...
SignalHandlers.cxx Loading commit data...
SignalHandlers.hxx Loading commit data...
Song.cxx Loading commit data...
Song.hxx Loading commit data...
SongEnumerator.hxx Loading commit data...
SongFilter.cxx Loading commit data...
SongFilter.hxx Loading commit data...
SongPointer.hxx Loading commit data...
SongPrint.cxx Loading commit data...
SongPrint.hxx Loading commit data...
SongSave.cxx Loading commit data...
SongSave.hxx Loading commit data...
SongSort.cxx Loading commit data...
SongSort.hxx Loading commit data...
SongSticker.cxx Loading commit data...
SongSticker.hxx Loading commit data...
SongUpdate.cxx Loading commit data...
StateFile.cxx Loading commit data...
StateFile.hxx Loading commit data...
Stats.cxx Loading commit data...
Stats.hxx Loading commit data...
StickerDatabase.cxx Loading commit data...
StickerDatabase.hxx Loading commit data...
StickerPrint.cxx Loading commit data...
StickerPrint.hxx Loading commit data...
TagFile.cxx Loading commit data...
TagFile.hxx Loading commit data...
TagPrint.cxx Loading commit data...
TagPrint.hxx Loading commit data...
TagSave.cxx Loading commit data...
TagSave.hxx Loading commit data...
TextFile.cxx Loading commit data...
TextFile.hxx Loading commit data...
TextInputStream.cxx Loading commit data...
TextInputStream.hxx Loading commit data...
TimePrint.cxx Loading commit data...
TimePrint.hxx Loading commit data...
Timer.cxx Loading commit data...
Timer.hxx Loading commit data...
UpdateArchive.cxx Loading commit data...
UpdateArchive.hxx Loading commit data...
UpdateContainer.cxx Loading commit data...
UpdateContainer.hxx Loading commit data...
UpdateDatabase.cxx Loading commit data...
UpdateDatabase.hxx Loading commit data...
UpdateDomain.cxx Loading commit data...
UpdateDomain.hxx Loading commit data...
UpdateGlue.cxx Loading commit data...
UpdateGlue.hxx Loading commit data...
UpdateIO.cxx Loading commit data...
UpdateIO.hxx Loading commit data...
UpdateInternal.hxx Loading commit data...
UpdateQueue.cxx Loading commit data...
UpdateQueue.hxx Loading commit data...
UpdateRemove.cxx Loading commit data...
UpdateRemove.hxx Loading commit data...
UpdateSong.cxx Loading commit data...
UpdateSong.hxx Loading commit data...
UpdateWalk.cxx Loading commit data...
UpdateWalk.hxx Loading commit data...
Volume.cxx Loading commit data...
Volume.hxx Loading commit data...
Win32Main.cxx Loading commit data...
ZeroconfAvahi.cxx Loading commit data...
ZeroconfAvahi.hxx Loading commit data...
ZeroconfBonjour.cxx Loading commit data...
ZeroconfBonjour.hxx Loading commit data...
ZeroconfGlue.cxx Loading commit data...
ZeroconfGlue.hxx Loading commit data...
ZeroconfInternal.hxx Loading commit data...
check.h Loading commit data...
gerror.h Loading commit data...
ls.cxx Loading commit data...
ls.hxx Loading commit data...
notify.cxx Loading commit data...
notify.hxx Loading commit data...
open.h Loading commit data...
poison.h Loading commit data...