- 13 Mar, 2009 1 commit
-
-
Avuton Olrich authored
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
-
- 25 Feb, 2009 1 commit
-
-
Max Kellermann authored
"ls" is a bad name for a library which parses URIs. We'll move the rest of the "ls" library later.
-
- 13 Feb, 2009 2 commits
-
-
Romain Bignon authored
-
Romain Bignon authored
This command shuffles a range of songs.
-
- 10 Feb, 2009 1 commit
-
-
Max Kellermann authored
When MPD is stopped, but the last song is still the "current song", and you delete it, playlist->current is not updated, and becomes an invalid value. Fix this by catching "!playlist->playing && playlist->current == (int)songOrder".
-
- 04 Feb, 2009 6 commits
-
-
Max Kellermann authored
Moved functions for playlist editing (append, delete, shuffle, move) to playlist_edit.c.
-
Max Kellermann authored
Moved handlers for control commands (play, stop, next, prev) to playlist_control.c.
-
Max Kellermann authored
Don't call syncPlaylistWithQueue() in nextSongInPlaylist() and previousSongInPlaylist(). This is a relic from the time when there was no event, and was a workaround to the timing problem.
-
Max Kellermann authored
Export the "g_playlist" variable, and pass it to all playlist functions. This way, we can split playlist.c easier into separate parts. The code which initializes the singleton variable is moved to playlist_global.c.
-
Max Kellermann authored
Moved everything related to saving or loading the playlist from/to the state file to playlist_state.c.
-
Max Kellermann authored
Before every operation which modifies the playlist, remember a pointer to the song struct. After the modification, determine the "next song" again, and if it differs, dequeue and queue the new song. This removes a lot of complexity from the playlist update code, and makes it more robust.
-
- 30 Jan, 2009 1 commit
-
-
Max Kellermann authored
This fixes an assertion failure: when the last song in the playlist was playing, and you deleted it, MPD aborted.
-
- 25 Jan, 2009 5 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Both are unused.
-
Max Kellermann authored
This function shuffles the last song of a range. This is used by addSongToPlaylist().
-
Max Kellermann authored
Don't declare and export variables specific to stored playlists in playlist.c/playlist.h.
-
- 24 Jan, 2009 6 commits
-
-
Max Kellermann authored
Now playlist.c does not contain any protocol specific code anymore.
-
Max Kellermann authored
No CamelCase and no typedefs.
-
Max Kellermann authored
Replaced several wrapper functions from playlist.c, and make command.c use the queue print functions directly.
-
Max Kellermann authored
To allow code outside playlist.c to access the "queue" object, provide a function which returns a const pointer.
-
Max Kellermann authored
No typedefs.
-
Max Kellermann authored
Moved the 2 remaining global variables into the playlist struct.
-
- 23 Jan, 2009 13 commits
-
-
Max Kellermann authored
When the playlist was loaded from the state file, the order numbers were the same as the positions. In random mode, we need to shuffle the queue order. To accomplish that, call setPlaylistRandomStatus() at the end of readPlaylistState(), and do a fresh shuffle.
-
Max Kellermann authored
song_id_to_position() is only a wrapper for queue_id_to_position().
-
Max Kellermann authored
When MPD is not playing while in random mode, and the client issues the "clear" command, MPD crashes in stopPlaylist(), or more exactly, in queue_order_to_position(-1). Exit from stopPlaylist() if MPD isn't playing.
-
Max Kellermann authored
Create a new library which saves/loads the queue to/from the state file.
-
Max Kellermann authored
PlaylistInfo() (notice the capital 'P') sends a stored playlist to the client. Move it to a separate library, where all the code which glues the playlist and the MPD protocol together will live.
-
Max Kellermann authored
Moved protocol printing functions which operate on the queue to queue_print.c.
-
Max Kellermann authored
The LocateTagItem objects are not modified.
-
Max Kellermann authored
swapSongs() is only a wrapper for queue_swap().
-
Max Kellermann authored
When you delete a song from the playlist which was paused, MPD forgot that it was paused and started playing the next song.
-
Max Kellermann authored
The playlist.c source is currently quite hard to understand. I have managed to wrap my head around it, and this patch attempts to explain it to the next guy.
-
Max Kellermann authored
The function playPlaylistIfPlayerStopped() is only called when the player thread is stopped. Converted that runtime check into an assertion, and remove one indent level.
-
Max Kellermann authored
One of the previous patches removed the "random" mode check from nextSongInPlaylist(), which caused a shuffle whenever MPD wrapped to the first song in "repeat" mode. Re-add that "random" check.
-
Max Kellermann authored
In playPlaylist(), the second "song==-1 && playing" check can never be reached, because at this point, the function has already returned (after unpausing).
-
- 22 Jan, 2009 4 commits
-
-
Max Kellermann authored
All callers pass false. Don't bother to collect that parameter.
-
Max Kellermann authored
When a song is deleted, start playing the next song immediately, within deleteFromPlaylist(). This allows us to remove the ugly playlist_noGoToNext flag, and the currentSongInPlaylist() function.
-
Max Kellermann authored
By calling queue_next_order() before playlist.current is invalidated (by the deletion of a song), we get more robust results, and the code becomes a little bit easier. incrPlaylistCurrent() is unused now, and can be removed.
-
Max Kellermann authored
Remove one indent level by returning diretly after the check. This makes the function more readable.
-