Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | directory: don't require a "directory" visitor | Max Kellermann | 2011-09-13 | 1 | -6/+6 |
| | | | | | .. to recurse. A visitor may not have one, but still be interested in a recursive search. | ||||
* | database: add struct db_visitor | Max Kellermann | 2011-09-13 | 13 | -196/+363 |
| | | | | Use this struct for db_walk(). | ||||
* | stored_playlist: return GError, code is playlist_result | Max Kellermann | 2011-09-11 | 10 | -197/+320 |
| | | | | | Improve error reporting and handling. command.c gets the new function print_error(), which sends a GError to the client. | ||||
* | playlist: move enum playlist_result to playlist_error.h | Max Kellermann | 2011-09-11 | 9 | -17/+50 |
| | | | | Reduce header dependencies. | ||||
* | playlist: move PLAYLIST_COMMENT to stored_playlist.c | Max Kellermann | 2011-09-11 | 2 | -2/+2 |
| | | | | Only used there. | ||||
* | db_plugin: introducing a plugin API for the song database | Max Kellermann | 2011-09-10 | 8 | -189/+529 |
| | | | | | | | | | | | First draft, not really pluggable currently - hard-coded to use the "simple" plugin, and calls several of its internal functions. The API is very simple currently, all searches are still performed over the root "directory" object. Future changes to the API will move those search implementations into the plugin, to allow more efficient implementations, or implementations that don't have the whole tree in memory all the time. | ||||
* | database: move code to db_save.c | Max Kellermann | 2011-09-10 | 4 | -128/+215 |
| | |||||
* | directory_save: pass const pointer to _save() | Max Kellermann | 2011-09-10 | 2 | -4/+4 |
| | |||||
* | tag_internal: add missing tag.h include | Max Kellermann | 2011-09-10 | 1 | -0/+2 |
| | | | | For TAG_NUM_OF_ITEM_TYPES. | ||||
* | conf: export config_param_free() | Max Kellermann | 2011-09-09 | 2 | -1/+4 |
| | |||||
* | conf: _get_next_param() returns a const pointer | Max Kellermann | 2011-09-09 | 2 | -3/+3 |
| | | | | No writers. | ||||
* | database: return GError on failure | Max Kellermann | 2011-09-09 | 4 | -23/+41 |
| | |||||
* | .gitignore: add doxygen.conf | Max Kellermann | 2011-09-09 | 1 | -0/+1 |
| | |||||
* | conf: add config_dup_block_path() | Max Kellermann | 2011-09-09 | 3 | -14/+38 |
| | |||||
* | utils: parsePath() returns GError on failure | Max Kellermann | 2011-09-09 | 4 | -14/+30 |
| | | | | Better error messages. | ||||
* | utils: pass a const string to parsePath() | Max Kellermann | 2011-09-09 | 2 | -15/+14 |
| | | | | Remove the slash hack, allocate memory for the user name. | ||||
* | utils: eliminate local variable "pos" | Max Kellermann | 2011-09-09 | 1 | -3/+4 |
| | | | | Just advance the "path" pointer. | ||||
* | conf: turn config_get_path() into config_dup_path() | Max Kellermann | 2011-09-09 | 4 | -47/+109 |
| | | | | | | | | | config_get_path() was somewhat flawed, because it pretended to be a function, when it really had a side effect. The second flaw was that it did not return the parser error, instead it aborted the whole process, which is bad style. The new function returns a duplicated (modified) string that must be freed by the caller, and returns a GError on failure. | ||||
* | glib_compat.h: emulate g_prefix_error() | Max Kellermann | 2011-09-09 | 1 | -0/+6 |
| | |||||
* | log: print detailed errno message on open() failure | Max Kellermann | 2011-09-09 | 1 | -2/+2 |
| | |||||
* | log: return GError on initialization failure | Max Kellermann | 2011-09-09 | 3 | -11/+34 |
| | |||||
* | conf: get_block_param() returns a const pointer | Max Kellermann | 2011-09-09 | 3 | -6/+6 |
| | | | | No caller needs to write. | ||||
* | conf: move duplicate check to _read_name_value() | Max Kellermann | 2011-09-09 | 3 | -17/+16 |
| | | | | config_add_block_param() cannot fail, which makes it easier to use. | ||||
* | conf: move code to config_read_name_value() | Max Kellermann | 2011-09-09 | 1 | -32/+34 |
| | | | | Reduce indent. | ||||
* | conf: add gcc optimization attributes | Max Kellermann | 2011-09-09 | 1 | -0/+3 |
| | |||||
* | dbUtils: move code to db_print.c | Max Kellermann | 2011-09-06 | 6 | -269/+318 |
| | |||||
* | dbUtils: pass player_control to findAddIn() | Max Kellermann | 2011-09-05 | 3 | -9/+14 |
| | | | | Allow calling findAddIn() without a client object. | ||||
* | Merge commit 'release-0.16.4' | Max Kellermann | 2011-09-02 | 1 | -1/+1 |
|\ | | | | | | | | | | | Conflicts: NEWS configure.ac | ||||
| * | mpd version 0.16.4release-0.16.4 | Avuton Olrich | 2011-09-01 | 2 | -2/+2 |
| | | |||||
* | | decoder/oggflac: delete this obsolete plugin | Max Kellermann | 2011-09-01 | 6 | -411/+4 |
| | | | | | | | | | | libOggFLAC has been deprecated for 5 years now, and we havn't been testing it for a long time. Let's delete it. | ||||
* | | Merge branch 'v0.16.x' | Max Kellermann | 2011-09-01 | 15 | -116/+170 |
|\| | | | | | | | | | | | Conflicts: configure.ac src/output_control.c | ||||
| * | configure.ac: fail if Vorbis was enabled explicitly, but not found | Max Kellermann | 2011-09-01 | 1 | -25/+18 |
| | | | | | | | | .. and a minor tweak for libFLAC+libogg detection. | ||||
| * | configure.ac: fail if FLAC was enabled explicitly, but not found | Max Kellermann | 2011-09-01 | 1 | -6/+8 |
| | | |||||
| * | output/osx: don't drain the buffer when closing | Max Kellermann | 2011-09-01 | 2 | -6/+1 |
| | | | | | | | | Eliminate an unnecessary source of deadlocks. | ||||
| * | output/osx: signal the GCond while mutex is locked | Max Kellermann | 2011-09-01 | 1 | -1/+1 |
| | | |||||
| * | configure.ac: auto-detect libmad without pkg-config | Max Kellermann | 2011-09-01 | 2 | -1/+3 |
| | | | | | | | | | | The pkg-config file was added by the Debian package maintainers, and unfortunately, the rest of the world doesn't have it. | ||||
| * | configure.ac: fail if libid3tag was enabled explicitly, but not found | Max Kellermann | 2011-09-01 | 2 | -10/+20 |
| | | | | | | | | | | Add M4 function MPD_AUTO_PKG_LIB for pkg-config with AC_CHECK_LIB fallback. | ||||
| * | configure.ac: use MPD_AUTO_PKG to detect avahi | Max Kellermann | 2011-09-01 | 2 | -14/+18 |
| | | | | | | | | | | | | Don't abort the configure script when avahi could not be auto-detected. It previously did, because there was no custom "fail" action for PKG_CHECK_MODULES. | ||||
| * | Makefile.am: use AVAHI_CFLAGS, AVAHI_LIBS | Max Kellermann | 2011-09-01 | 2 | -2/+3 |
| | | | | | | | | Don't add those to MPD_CFLAGS / MPD_LIBS. | ||||
| * | output_all: move _lock_signal() to output_control.c | Max Kellermann | 2011-09-01 | 3 | -21/+23 |
| | | | | | | | | Better name, better documentation. | ||||
| * | output_thread: reimplement CANCEL synchronization | Max Kellermann | 2011-09-01 | 7 | -14/+35 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | The output thread could hang indefinitely after finishing CANCEL, because it could have missed the signal while the output was not unlocked in ao_command_finished(). This patch removes the wait() call after CANCEL, and adds the flag "allow_play" instead. While this flag is set, playback is skipped. With this flag, there will not be any excess wait() call after the pipe has been cleared. This patch fixes a bug that causes mpd to discontinue playback after seeking, due to the race condition described above. | ||||
| * | output/pulse: reset callbacks before closing stream/context | Max Kellermann | 2011-08-31 | 1 | -0/+10 |
| | | | | | | | | | | Fixes assertion failure when a stream callback is invoked too late after a format change. | ||||
| * | output/pulse: add function _delete_stream() | Max Kellermann | 2011-08-31 | 1 | -5/+16 |
| | | | | | | | | Merge common code. | ||||
| * | output/pulse: use _delete_context() | Max Kellermann | 2011-08-31 | 1 | -16/+15 |
| | | | | | | | | Eliminate duplicate code. | ||||
| * | doc/developer.xml: change the coing style example return type to int | Jonathan Neuschäfer | 2011-08-27 | 1 | -1/+1 |
| | | |||||
| * | scripts/makedist.sh: fix test usage | Jonathan Neuschäfer | 2011-08-27 | 1 | -2/+2 |
| | | | | | | | | Checkbashisms (part of the Debian devscripts) pionted this out. | ||||
| * | input/curl: implement a hard-coded timeout of 10 seconds | Max Kellermann | 2011-08-26 | 2 | -0/+4 |
| | | | | | | | | | | Be sure to stop the operation at some point when the server isn't responding. | ||||
* | | output/raop: remove Audio-Jack-Status check | Max Kellermann | 2011-08-31 | 2 | -27/+7 |
| | | | | | | | | | | The value of this is not used, the code is commented out - let's get rid of it. | ||||
* | | output/raop: remove empty function raopcl_stream_connect() | Max Kellermann | 2011-08-31 | 1 | -8/+0 |
| | | |||||
* | | rtsp_client: use the I/O thread | Max Kellermann | 2011-08-31 | 5 | -56/+617 |
| | | | | | | | | Make the code portable. |