• Christian Körner's avatar
    thread/PosixCond: fix timed_wait · 8bbfb5cd
    Christian Körner authored
    pthread_cond_timedwait() in PosixCond.hxx:timed_wait(PosixMutex...) returns
    EINVAL, if ts.tv_nsec >= 1E9. In this case, it returns to early.
    
    Find attached a patch which fixes this. I chose a compare-subtraction method
    to keep ts.tv_nsec below 1E9.
    
    Another option would be
    ts.tv_sec += ts.tv_nsec / 1000000000;
    ts.tv_nsec %= 1000000000;
    
    But I guess this takes more time on some ARM processors, which don't support
    hardware division.
    8bbfb5cd
Name
Last commit
Last update
..
AudioCompress Loading commit data...
android Loading commit data...
archive Loading commit data...
client Loading commit data...
command Loading commit data...
config 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...
haiku Loading commit data...
input Loading commit data...
java Loading commit data...
lib Loading commit data...
mixer Loading commit data...
neighbor Loading commit data...
net Loading commit data...
output Loading commit data...
pcm Loading commit data...
player Loading commit data...
playlist Loading commit data...
protocol Loading commit data...
queue Loading commit data...
sticker Loading commit data...
storage Loading commit data...
system Loading commit data...
tag Loading commit data...
thread Loading commit data...
unix Loading commit data...
util Loading commit data...
win32 Loading commit data...
zeroconf 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...
BulkEdit.hxx Loading commit data...
CheckAudioFormat.cxx Loading commit data...
CheckAudioFormat.hxx Loading commit data...
Chrono.hxx Loading commit data...
CommandLine.cxx Loading commit data...
CommandLine.hxx Loading commit data...
Compiler.h Loading commit data...
DetachedSong.cxx Loading commit data...
DetachedSong.hxx Loading commit data...
IOThread.cxx Loading commit data...
IOThread.hxx Loading commit data...
IcyMetaDataParser.cxx Loading commit data...
IcyMetaDataParser.hxx Loading commit data...
Idle.cxx Loading commit data...
Idle.hxx Loading commit data...
IdleFlags.cxx Loading commit data...
IdleFlags.hxx Loading commit data...
Instance.cxx Loading commit data...
Instance.hxx Loading commit data...
Listen.cxx Loading commit data...
Listen.hxx Loading commit data...
LocateUri.cxx Loading commit data...
LocateUri.hxx Loading commit data...
Log.cxx Loading commit data...
Log.hxx Loading commit data...
LogBackend.cxx Loading commit data...
LogBackend.hxx Loading commit data...
LogInit.cxx Loading commit data...
LogInit.hxx Loading commit data...
LogLevel.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...
MixRampInfo.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...
Partition.cxx Loading commit data...
Partition.hxx Loading commit data...
Permission.cxx Loading commit data...
Permission.hxx Loading commit data...
PlaylistDatabase.cxx Loading commit data...
PlaylistDatabase.hxx Loading commit data...
PlaylistError.cxx Loading commit data...
PlaylistError.hxx Loading commit data...
PlaylistFile.cxx Loading commit data...
PlaylistFile.hxx Loading commit data...
PlaylistPrint.cxx Loading commit data...
PlaylistPrint.hxx Loading commit data...
PlaylistSave.cxx Loading commit data...
PlaylistSave.hxx Loading commit data...
PluginUnavailable.hxx Loading commit data...
ReplayGainConfig.cxx Loading commit data...
ReplayGainConfig.hxx Loading commit data...
ReplayGainInfo.cxx Loading commit data...
ReplayGainInfo.hxx Loading commit data...
SongFilter.cxx Loading commit data...
SongFilter.hxx Loading commit data...
SongLoader.cxx Loading commit data...
SongLoader.hxx Loading commit data...
SongPrint.cxx Loading commit data...
SongPrint.hxx Loading commit data...
SongSave.cxx Loading commit data...
SongSave.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...
TagArchive.cxx Loading commit data...
TagArchive.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...
TagStream.cxx Loading commit data...
TagStream.hxx Loading commit data...
TimePrint.cxx Loading commit data...
TimePrint.hxx Loading commit data...
check.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...