diff options
author | Warren Dukes <warren.dukes@gmail.com> | 2004-11-08 21:54:50 +0000 |
---|---|---|
committer | Warren Dukes <warren.dukes@gmail.com> | 2004-11-08 21:54:50 +0000 |
commit | 9b03731c869ad4ca7c19cda3558d3a47855743da (patch) | |
tree | 74c790002ad56b8ef6d33fec685572c73a27d627 /src/audioOutput.c | |
parent | b0e6a061990a4915f56617e891252723a7ba2e17 (diff) | |
download | mpd-9b03731c869ad4ca7c19cda3558d3a47855743da.tar.gz mpd-9b03731c869ad4ca7c19cda3558d3a47855743da.tar.xz mpd-9b03731c869ad4ca7c19cda3558d3a47855743da.zip |
see if this fixes the clients disconnecting issues
git-svn-id: https://svn.musicpd.org/mpd/trunk@2552 09075e82-0dd4-0310-85a5-a0d7c8717e4f
Diffstat (limited to 'src/audioOutput.c')
-rw-r--r-- | src/audioOutput.c | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/src/audioOutput.c b/src/audioOutput.c index 27a464ade..b355ad2fa 100644 --- a/src/audioOutput.c +++ b/src/audioOutput.c @@ -151,13 +151,20 @@ static void convertAudioFormat(AudioOutput * audioOutput, char ** chunkArgPtr, } int playAudioOutput(AudioOutput * audioOutput, char * playChunk, int size) { + int ret; + if(!audioOutput->open) return -1; if(!audioOutput->sameInAndOutFormats) { convertAudioFormat(audioOutput, &playChunk, &size); } - - return audioOutput->playFunc(audioOutput, playChunk, size); + + + blockSignals(); + ret = audioOutput->playFunc(audioOutput, playChunk, size); + unblockSignals(); + + return ret; } void closeAudioOutput(AudioOutput * audioOutput) { |