music player daemon (fork)
e5df85db15
First, make sure we call finishPlaylist() before closeMp3Directory() since the latter will free non-SONG_TYPE_URL songs in playlist, which causes an invalid read when we try to look for SONG_TYPE_URL songs to free in finishPlaylist. Secondly, make sure our children have all exited before freeing the playerData. If we do not, slowly-delivered signals can trigger a race condition in the signal handlers of the decode and player processes which rely on getPlayerData. To avoid waitpid-ing too long (or at all), move the freePlayerData() call farther down in main() (this won't affect anything else) to give the OS a better chance to deliver signals and finish running sig handlers for terminated children. git-svn-id: https://svn.musicpd.org/mpd/trunk@4640 09075e82-0dd4-0310-85a5-a0d7c8717e4f |
||
---|---|---|
doc | ||
m4 | ||
scripts | ||
src | ||
AUTHORS | ||
autogen.sh | ||
ChangeLog | ||
configure.ac | ||
COPYING | ||
INSTALL | ||
Makefile.am | ||
README | ||
TODO | ||
UPGRADING |
Music Player Daemon (MPD) http://www.musicpd.org A daemon for playing music (mp3, ogg vorbis, and flac). 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. To install MPD, see INSTALL. MPD includes 3 libraries in the source. libid3tag and libmad are released under the GPL and copyrighted by Robert Leslie (http://www.underbit.com/products/mad). mp4ff is released under the GPL and copyrighted by M. Bakker, Ahead Software AG (http://www.nero.com) and is distributed as a part of the FAAD2 - Freeware Advance Audio (AAC) Decoder. MPD is released under the GNU Public License. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA For the full license, see COPYING.