music player daemon (fork)
Go to file
Max Kellermann 2789493a5f PlayerThread: fix stuck MPD after song change (0.18.2 regression)
Commit 77c63511 caused MPD to become stuck right after a song change.
The problem was that at some point, the MusicBuffer became full, and
the DecoderThread working on the next song waits for the PlayerThread.
However, the PlayerThread was stuck in a loop of g_usleep() calls, and
never bothered to tell the DecoderThread that the MusicBuffer is not
full anymore.  This bug is very old, but its chance to occur went from
nearly 0% to nearly 100%.

The fix is to wake up the DecoderThread before waiting for it.  As a
side effect, I replaced the g_usleep() call with a Cond::Wait() call.
2013-11-08 12:02:21 +01:00
doc doc: more information about "close" 2013-11-07 18:41:53 +01:00
m4 configure.ac: add function MPD_AUTO_LIB and use it 2013-10-17 00:09:08 +02:00
scripts scripts: delete obsolete scripts 2013-04-17 00:37:30 +02:00
src PlayerThread: fix stuck MPD after song change (0.18.2 regression) 2013-11-08 12:02:21 +01:00
test test/*: add more missing stdlib.h includes 2013-11-05 17:28:23 +01:00
.gitignore test/test_mixramp: unit test for mixramp_interpolate() 2013-10-26 13:49:15 +02:00
AUTHORS AUTHORS: add new authors 2013-10-31 00:23:41 +01:00
COPYING Update the text of the GPLv2, this fixes the address and a few other oddities. 2008-12-20 19:02:09 -08:00
INSTALL configure.ac: disable the OS X output plugin by default 2013-10-28 22:25:58 +01:00
Makefile.am Makefile.am: distribute missing files 2013-11-04 08:26:10 +01:00
NEWS PlayerThread: fix stuck MPD after song change (0.18.2 regression) 2013-11-08 12:02:21 +01:00
README Word wrap to 80 char lines 2008-12-20 19:27:02 -08:00
UPGRADING UPGRADING: added a 0.14 section 2008-11-05 21:27:30 +01:00
autogen.sh Makefile.am: require automake 1.11 2011-10-09 18:32:55 +02:00
configure.ac configure.ac: prepare for 0.18.3 2013-11-08 11:57:37 +01:00
mpd.service.in mpd.service: depend on network.target 2012-11-21 17:26:23 +01:00
valgrind.suppressions valgrind.suppressions: add g_get_home_dir suppression 2013-10-18 01:14:31 +02:00

README

		       Music Player Daemon (MPD)
			http://www.musicpd.org

A daemon for playing music of various formats.  Music is played through the 
server's audio device.  The daemon stores info about all available music, 
and this info can be easily searched and retrieved.  Player control, info
retrieval, and playlist management can all be managed remotely.

For basic installation information see the INSTALL file.

MPD is released under the GNU General Public License version 2, which is
distributed in the COPYING file.

You should have received a copy of the GNU General Public License along with
this program.  If not, see <http://www.gnu.org/licenses/>.