aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* player_control: added several assertions on pc.next_song==NULLMax Kellermann2009-10-081-0/+6
| | | | | After some of the commands, the player thread must have reset the pc.next_song attribute.
* player_control: no CamelCaseMax Kellermann2009-10-089-62/+79
|
* player_control: clear errored_song in clearPlayerError()Max Kellermann2009-10-081-1/+2
| | | | | Without the player error code, it errored_song variable is not used, and should be cleared, to avoid invalid access in pc_song_deleted().
* player_control: bundle "get" functions in pc_get_status()Max Kellermann2009-10-084-34/+46
| | | | | | The new player_status struct replaces a bunch of playerGetX() functions. When we add proper locking to the player_control struct, we will only need to lock once for the "status" command.
* player_control: allocate getPlayerErrorStr() resultMax Kellermann2009-10-083-21/+23
| | | | This lets us eliminate the static fixed-size buffer.
* playlist_control: "previous" really plays the previous songMax Kellermann2009-10-084-39/+13
| | | | | | | No more CD player emulation. The current behaviour of "previous" is difficult for a client to predict, because it does not definitely know the current position within the song. If a client wants to restart the current song, it can always send "playid".
* input_stream: include config.h for AC_SYS_LARGEFILE macrosMax Kellermann2009-10-081-0/+2
| | | | | AC_SYS_LARGEFILE defines macros for config.h. If we don't include config.h, we don't get large file support.
* decoder_api: document all function parametersMax Kellermann2009-10-081-27/+73
|
* configure.ac: build with large file support by defaultAlam Arias2009-10-082-0/+3
| | | | This fixes mpg123 support.
* state_file: save only if something has changedMax Kellermann2009-10-089-0/+87
| | | | | | If nothing has changed since the last save, don't save the state file. Saving will spin up the hard drive, which is undesirable on hosts where MPD is idling in background.
* output_state: no CamelCaseMax Kellermann2009-10-063-6/+6
|
* Merged release 0.15.4 from branch 'v0.15.x'Max Kellermann2009-10-036-6/+51
|\ | | | | | | | | | | Conflicts: NEWS configure.ac
| * mpd version 0.15.4release-0.15.4Avuton Olrich2009-10-032-2/+2
| |
| * decoder/ffmpeg: use the "artist" tag if "author" is not presentMax Kellermann2009-09-302-2/+6
| | | | | | | | | | | | | | Usually, we read our "artist" tag from ffmpeg's "author" tag. In some cases however (e.g. APE), this tag is named "artist". This patch implements a fallback: if no "author" is found, MPD tries to use "artist".
| * decoder/faad: skip assertion failure on large ID3 tagsMax Kellermann2009-09-302-2/+7
| | | | | | | | | | | | When the ID3 tag in an AAC file is larger than the current buffer, the function decoder_buffer_consume() aborts. By using the new function decoder_buffer_skip() instead, we can safely skip the ID3 tag.
| * decoder_buffer: added function decoder_buffer_skip()Max Kellermann2009-09-302-0/+36
| |
| * input/mms: fix G_LOG_DOMAIN valueSerge Ziryukin2009-09-201-1/+1
| |
| * output/osx: fix the OS X 10.6 buildPatrik Weiskircher2009-09-202-0/+3
| | | | | | | | Include CoreServices/CoreServices.h.
* | command: range support for "delete"Max Kellermann2009-09-304-3/+39
| |
* | playlist_edit: moved code to playlist_delete_internal()Max Kellermann2009-09-301-10/+19
| |
* | Add the sidplay filter param to doc/mpdconf.example.Tony2009-09-281-0/+4
| |
* | Make the sidplay decoder filter configurable.Tony2009-09-281-1/+5
| |
* | automatically update the database with Linux inotifyMax Kellermann2009-09-2510-0/+806
| | | | | | | | | | | | This patch implements a light-weight inotify library, and watches all directories below the music directory. It updates all directories where files changed after a delay of 5 seconds.
* | update: added missing stdbool.h includeMax Kellermann2009-09-251-0/+2
| |
* | command: relax requirements for unquoted wordsMax Kellermann2009-09-253-6/+75
| | | | | | | | | | | | Allow most printable characters in unquoted words. The tokenizer patch introduced very strict requirements for command parameters - those were undocumented, and we're reverting the strictness now.
* | command: added command "rescan"Max Kellermann2009-09-248-27/+81
| | | | | | | | | | "rescan" is the same as "update", but it discards existing songs in the database.
* | configure.ac: rename HAVE_CURL to ENABLE_CURLMax Kellermann2009-09-244-6/+6
| |
* | conf: handle fatal errors with GErrorMax Kellermann2009-09-247-58/+136
| | | | | | | | | | | | | | Don't call g_error(), which will abort the process and dump core. This patch does not affect all the config_get_X() functions. These need some more refactoring.
* | conf: splitted function config_param_free()Max Kellermann2009-09-241-4/+11
| |
* | cmdline: handle fatal errors with GErrorMax Kellermann2009-09-243-5/+30
| | | | | | | | Don't call g_error(), which will abort the process and dump core.
* | listen: handle fatal errors with GErrorMax Kellermann2009-09-243-10/+29
| | | | | | | | Don't call g_error(), which will abort the process and dump core.
* | update: splitted update.c into several sourcesMax Kellermann2009-09-246-770/+991
| |
* | update: pass const string to update_enqueue()Max Kellermann2009-09-243-14/+20
| | | | | | | | | | Duplicate the path string within update.c, do not expect an allocated string as parameter.
* | update: renamed directory_update_init() to update_enqueue()Max Kellermann2009-09-244-4/+4
| |
* | decoder/sidplay: free songlength data blob in error handlerMax Kellermann2009-09-241-3/+4
| | | | | | | | | | When parsing the songlength database fails, the code forgot to free the memory allocated by the raw file data.
* | decoder/sidplay: moved code to sidplay_load_songlength_db()Max Kellermann2009-09-241-29/+36
| |
* | decoder/sidplay: free GError objectsMax Kellermann2009-09-241-0/+2
| | | | | | | | | | The caller is responsible fro freeing GError objects. That g_error_free() call was missing in two places.
* | decoder/sidplay: pass GError** to g_file_get_contents()Max Kellermann2009-09-241-1/+2
| | | | | | | | | | The error handler dereferences GError*, but did not retrieve that object from g_file_get_contents().
* | cmdline: removed options --create-db and --no-create-dbMax Kellermann2009-09-206-35/+7
| | | | | | | | | | Both options are deprecated, and should not be used anymore. Many users get confused by their presence.
* | output/osx: fix the OS X 10.6 buildPatrik Weiskircher2009-09-203-6/+3
| | | | | | | | Include CoreServices/CoreServices.h.
* | Merge branch 'v0.15.x'Max Kellermann2009-09-104-36/+36
|\| | | | | | | | | | | | | Conflicts: NEWS configure.ac doc/mpdconf.example
| * doc/protocol: clarify "update"Max Kellermann2009-09-101-13/+8
| | | | | | | | | | The update job id is positive. When used in a command list, MPD prints one job id for each "update" command.
| * doc/mpdconf.example: additional comment signs for some parametersMax Kellermann2009-09-101-18/+18
| | | | | | | | | | Add a second column of comment signs on some parameters which users shouldn't usually set, unless they know what they're doing.
| * decoder/vorbis: revert "faster tag scanning with ov_test_callback()"Max Kellermann2009-09-102-1/+3
| | | | | | | | | | This patch made ov_time_total() unusable, and MPD did not know the duration of songs.
| * Modify version string to post-release version 0.15.4~gitAvuton Olrich2009-08-292-1/+4
| |
* | INSTALL: mention libwavpack and OpenALMax Kellermann2009-09-091-0/+6
| |
* | output/openal: support OpenAL plugin on Mac OS XSerge Ziryukin2009-09-072-3/+19
| |
* | doc: documented the "openal" output plugin settingsSerge Ziryukin2009-09-062-0/+34
| |
* | output/openal: fix default device nameSerge Ziryukin2009-09-061-3/+3
| |
* | configure.ac: use /Developer/SDKs/MacOSX10.5.sdkPatrik Weiskircher2009-09-061-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | First, this is not a nice fix. I am also not sure why the error happens in the first place. I assume Apple deprecated some stuff in 10.6 + x86_64. My patch simply uses the 10.5 SDK if compiling on 10.6 Snow Leopard - which is installed by default if you install XCode 3.2 that comes with Snow Leopard. The reason this is not a nice fix is, of course, that this doesn't fix the problem. It just "postpones" it to the next release of MacOS X. But, some people may need it, and its better than nothing.