aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2012-08-14mapper: fix non-UTF8 music directory nameMax Kellermann4-37/+73
Duplicate the music_dir variable: one encoded in UTF-8, and another one using the configured filesystem character set. This fixes an ancient MPD bug.
2012-08-14playlist_song: use map_to_relative_path()Max Kellermann1-4/+4
2012-08-14playlist_song: improve const-correctnessMax Kellermann1-5/+4
2012-08-14playlist_song: move code to playlist_check_load_song()Max Kellermann1-23/+23
2012-08-14input_stream, main: remove obsolete GLib version checksMax Kellermann3-8/+0
MPD requires GLib 2.16.
2012-08-13client_file: remove pure attribute from client_allow_file().Anton Khirnov1-1/+0
That function is not pure, it writes to error. When marked as pure, the compiler is allowed to assume it does not do anything to error, so it can remain NULL, which would result in an invalid read in print_error().
2012-08-09Directory: move code to directory_allocate()Max Kellermann1-8/+18
2012-08-08player_control: add GError attributeMax Kellermann4-68/+56
Rewrite of the pc_get_error_message() function, now using a GError object instead of the complicated "errored_song" attribute.
2012-08-08output_all: add basic GError supportMax Kellermann4-11/+74
2012-08-08decoder_control: add GError attributeMax Kellermann4-1/+106
2012-08-08player_control: rename attribute "error" to "error_type"Max Kellermann4-12/+14
2012-08-08player_control: rename player_error enum valuesMax Kellermann4-16/+24
2012-08-08player_control: remove unused enum player_error valuesMax Kellermann3-19/+1
2012-08-08player_control: inline trivial functionsMax Kellermann2-40/+25
2012-08-08song: use C++ compilerMax Kellermann2-8/+16
2012-08-08tag_pool: use GStaticMutexMax Kellermann4-32/+22
Eliminates explicit global initialisation.
2012-08-08song: include cleanupMax Kellermann1-1/+0
2012-08-08directory: use gcc.h macros, not GLibMax Kellermann1-6/+7
2012-08-08conf: add a "database" blockMax Kellermann2-6/+19
The new block overrides the "db_file" setting, and allows configuring any database plugin.
2012-08-08DatabaseGlue: look up the database pluginMax Kellermann1-1/+11
No more hard-coded "simple" plugin.
2012-08-08DatabaseGlue: pass block to db_init()Max Kellermann3-13/+9
Let the caller take care for legacy conversion.
2012-08-08DatabaseGlue: add function db_is_simple()Max Kellermann4-5/+38
Preparing for non-"simple" database plugins.
2012-08-08main: don't call db_init() without databaseMax Kellermann1-1/+0
Useless call.
2012-08-08ProxyDatabasePlugin: obey the "recursive" flagMax Kellermann1-2/+3
2012-08-08ProxyDatabasePlugin: use an artificial "root" directoryMax Kellermann1-2/+9
Fixes assertion failures in the Directory library.
2012-08-08DatabasePrint: don't print Last-Modified if unknownMax Kellermann2-2/+4
2012-08-08time_print: new library, function time_print()Max Kellermann5-57/+87
Implements error checking for the gmtime_r() call, which was missing in two code locations.
2012-08-08ProxyDatabasePlugin: new database plugin using libmpdclientMax Kellermann3-0/+377
Implementation incomplete, but sort-of-works. DumpDatabase works, but MPD is still hard-coded on the "simple" plugin.
2012-08-08DatabaseCommands: allow empty criteria for "list"Max Kellermann1-3/+5
Fixes regression.
2012-08-08DatabaseSelection: add "match" attributeMax Kellermann11-97/+56
Let the database plugin do the match.
2012-08-08DatabaseCommands: merge duplicate search/find codeMax Kellermann2-55/+31
2012-08-08locate: add a per-item "fold_case" flagMax Kellermann13-179/+55
Merge locate_song_search() and locate_song_match().
2012-08-08locate: make "tag" unsignedMax Kellermann2-9/+8
2012-08-07locate: make the structs opaqueMax Kellermann3-29/+36
2012-08-07locate: don't allow empty listMax Kellermann3-33/+9
2012-08-07locate: pass unsigned integer to _parse()Max Kellermann2-2/+2
2012-08-07locate: add "pure" attributesMax Kellermann2-0/+5
2012-08-07DatabaseCommands: remove stray locate_item_list_parse() callMax Kellermann1-2/+0
2012-08-07locate: add "casefold" flag to parserMax Kellermann8-72/+26
Fold the case during construction, without having to create another copy.
2012-08-07locate: remove unused function locate_item_free()Max Kellermann2-11/+0
2012-08-07db_selection: rename to DatabaseSelectionMax Kellermann11-60/+36
2012-08-07db_print.h: rename to DatabasePrint.hxxMax Kellermann3-9/+9
2012-08-07dbUtils.h: move to DatabaseQueue.hxx, DatabasePlaylist.hxxMax Kellermann7-18/+77
2012-08-07command: move code to DatabaseCommands.cxxMax Kellermann3-238/+349
Prepare to use the DatabasePlugin C++ API directly.
2012-08-07command: move print_error() to CommandError.cxxMax Kellermann4-104/+178
Prepare for splitting command.c.
2012-08-07Database{Plugin,Visitor}: pass referencesMax Kellermann9-83/+87
2012-08-07DatabaseRegistry: list of pluginsMax Kellermann2-0/+75
2012-08-02DatabaseGlue: remove db_walk(), db_visit()Max Kellermann2-61/+0
Unused.
2012-08-02stats: convert to C++Max Kellermann1-26/+31
2012-08-02db_print: convert to C++Max Kellermann1-154/+91