aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-09-13db_plugin: add method visit()Max Kellermann7-22/+147
2011-09-13database: don't allow uri==NULLMax Kellermann7-10/+34
Add nonnull attributes and fix all callers.
2011-09-13gcc.h: add macro gcc_nonnullMax Kellermann1-0/+4
2011-09-13gcc.h: change "mpd_" prefix to "gcc_"Max Kellermann2-19/+19
This is specific to gcc, not to mpd.
2011-09-13db_plugin: add method get_song()Max Kellermann3-2/+39
New db_get_song() implementation.
2011-09-13database: generate GError when database is disabledMax Kellermann3-5/+20
2011-09-13directory: don't visit "self" in _walk()Max Kellermann2-4/+8
Let the caller decide if the current directory should be visited.
2011-09-13locate: remove unused function locate_item_new()Max Kellermann2-17/+0
2011-09-13directory: don't require a "directory" visitorMax Kellermann1-6/+6
.. to recurse. A visitor may not have one, but still be interested in a recursive search.
2011-09-13database: add struct db_visitorMax Kellermann12-196/+361
Use this struct for db_walk().
2011-09-11stored_playlist: return GError, code is playlist_resultMax Kellermann10-197/+320
Improve error reporting and handling. command.c gets the new function print_error(), which sends a GError to the client.
2011-09-11playlist: move enum playlist_result to playlist_error.hMax Kellermann8-17/+49
Reduce header dependencies.
2011-09-11playlist: move PLAYLIST_COMMENT to stored_playlist.cMax Kellermann2-2/+2
Only used there.
2011-09-10db_plugin: introducing a plugin API for the song databaseMax Kellermann7-189/+527
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.
2011-09-10database: move code to db_save.cMax Kellermann3-128/+214
2011-09-10directory_save: pass const pointer to _save()Max Kellermann2-4/+4
2011-09-10tag_internal: add missing tag.h includeMax Kellermann1-0/+2
For TAG_NUM_OF_ITEM_TYPES.
2011-09-09conf: export config_param_free()Max Kellermann2-1/+4
2011-09-09conf: _get_next_param() returns a const pointerMax Kellermann2-3/+3
No writers.
2011-09-09database: return GError on failureMax Kellermann4-23/+41
2011-09-09conf: add config_dup_block_path()Max Kellermann3-14/+38
2011-09-09utils: parsePath() returns GError on failureMax Kellermann4-14/+30
Better error messages.
2011-09-09utils: pass a const string to parsePath()Max Kellermann2-15/+14
Remove the slash hack, allocate memory for the user name.
2011-09-09utils: eliminate local variable "pos"Max Kellermann1-3/+4
Just advance the "path" pointer.
2011-09-09conf: turn config_get_path() into config_dup_path()Max Kellermann4-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.
2011-09-09glib_compat.h: emulate g_prefix_error()Max Kellermann1-0/+6
2011-09-09log: print detailed errno message on open() failureMax Kellermann1-2/+2
2011-09-09log: return GError on initialization failureMax Kellermann3-11/+34
2011-09-09conf: get_block_param() returns a const pointerMax Kellermann3-6/+6
No caller needs to write.
2011-09-09conf: move duplicate check to _read_name_value()Max Kellermann2-16/+15
config_add_block_param() cannot fail, which makes it easier to use.
2011-09-09conf: move code to config_read_name_value()Max Kellermann1-32/+34
Reduce indent.
2011-09-09conf: add gcc optimization attributesMax Kellermann1-0/+3
2011-09-06dbUtils: move code to db_print.cMax Kellermann5-269/+317
2011-09-05dbUtils: pass player_control to findAddIn()Max Kellermann3-9/+14
Allow calling findAddIn() without a client object.
2011-09-01decoder/oggflac: delete this obsolete pluginMax Kellermann2-355/+1
libOggFLAC has been deprecated for 5 years now, and we havn't been testing it for a long time. Let's delete it.
2011-09-01output/osx: don't drain the buffer when closingMax Kellermann1-6/+0
Eliminate an unnecessary source of deadlocks.
2011-09-01output/osx: signal the GCond while mutex is lockedMax Kellermann1-1/+1
2011-09-01output_all: move _lock_signal() to output_control.cMax Kellermann3-21/+23
Better name, better documentation.
2011-09-01output_thread: reimplement CANCEL synchronizationMax Kellermann6-14/+34
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.
2011-08-31output/pulse: reset callbacks before closing stream/contextMax Kellermann1-0/+10
Fixes assertion failure when a stream callback is invoked too late after a format change.
2011-08-31output/pulse: add function _delete_stream()Max Kellermann1-5/+16
Merge common code.
2011-08-31output/pulse: use _delete_context()Max Kellermann1-16/+15
Eliminate duplicate code.
2011-08-31output/raop: remove Audio-Jack-Status checkMax Kellermann2-27/+7
The value of this is not used, the code is commented out - let's get rid of it.
2011-08-31output/raop: remove empty function raopcl_stream_connect()Max Kellermann1-8/+0
2011-08-31rtsp_client: use the I/O threadMax Kellermann4-56/+615
Make the code portable.
2011-08-31udp_server: don't use MSG_DONTWAIT on WIN32Max Kellermann1-0/+4
Doesn't exist on mingw32.
2011-08-31mixer/raop: include cleanupMax Kellermann1-12/+2
2011-08-31output/raop: cast sendto() parameter to void pointerMax Kellermann1-2/+4
Fix compilation on mingw32.
2011-08-31rtsp_client: use g_usleep()Max Kellermann1-3/+1
usleep() is not portable.
2011-08-31rtsp_client: allow parameter "kd" to be NULLMax Kellermann3-8/+17
When the caller isn't interested in the values.