Commit message (Collapse) | Author | Age | Files | Lines | ||
---|---|---|---|---|---|---|
... | ||||||
* | | tag_pool: use GStaticMutex | Max Kellermann | 2012-08-08 | 4 | -32/+22 | |
| | | | | | | | | Eliminates explicit global initialisation. | |||||
* | | song: include cleanup | Max Kellermann | 2012-08-08 | 1 | -1/+0 | |
| | | ||||||
* | | directory: use gcc.h macros, not GLib | Max Kellermann | 2012-08-08 | 1 | -6/+7 | |
| | | ||||||
* | | conf: add a "database" block | Max Kellermann | 2012-08-08 | 2 | -6/+19 | |
| | | | | | | | | | | The new block overrides the "db_file" setting, and allows configuring any database plugin. | |||||
* | | DatabaseGlue: look up the database plugin | Max Kellermann | 2012-08-08 | 1 | -1/+11 | |
| | | | | | | | | No more hard-coded "simple" plugin. | |||||
* | | DatabaseGlue: pass block to db_init() | Max Kellermann | 2012-08-08 | 3 | -13/+9 | |
| | | | | | | | | Let the caller take care for legacy conversion. | |||||
* | | DatabaseGlue: add function db_is_simple() | Max Kellermann | 2012-08-08 | 4 | -5/+38 | |
| | | | | | | | | Preparing for non-"simple" database plugins. | |||||
* | | main: don't call db_init() without database | Max Kellermann | 2012-08-08 | 1 | -1/+0 | |
| | | | | | | | | Useless call. | |||||
* | | ProxyDatabasePlugin: obey the "recursive" flag | Max Kellermann | 2012-08-08 | 1 | -2/+3 | |
| | | ||||||
* | | ProxyDatabasePlugin: use an artificial "root" directory | Max Kellermann | 2012-08-08 | 1 | -2/+9 | |
| | | | | | | | | Fixes assertion failures in the Directory library. | |||||
* | | DatabasePrint: don't print Last-Modified if unknown | Max Kellermann | 2012-08-08 | 2 | -2/+4 | |
| | | ||||||
* | | time_print: new library, function time_print() | Max Kellermann | 2012-08-08 | 5 | -57/+87 | |
| | | | | | | | | | | Implements error checking for the gmtime_r() call, which was missing in two code locations. | |||||
* | | ProxyDatabasePlugin: new database plugin using libmpdclient | Max Kellermann | 2012-08-08 | 3 | -0/+377 | |
| | | | | | | | | | | Implementation incomplete, but sort-of-works. DumpDatabase works, but MPD is still hard-coded on the "simple" plugin. | |||||
* | | DatabaseCommands: allow empty criteria for "list" | Max Kellermann | 2012-08-08 | 1 | -3/+5 | |
| | | | | | | | | Fixes regression. | |||||
* | | DatabaseSelection: add "match" attribute | Max Kellermann | 2012-08-08 | 11 | -97/+56 | |
| | | | | | | | | Let the database plugin do the match. | |||||
* | | DatabaseCommands: merge duplicate search/find code | Max Kellermann | 2012-08-08 | 2 | -55/+31 | |
| | | ||||||
* | | locate: add a per-item "fold_case" flag | Max Kellermann | 2012-08-08 | 13 | -179/+55 | |
| | | | | | | | | Merge locate_song_search() and locate_song_match(). | |||||
* | | locate: make "tag" unsigned | Max Kellermann | 2012-08-08 | 2 | -9/+8 | |
| | | ||||||
* | | locate: make the structs opaque | Max Kellermann | 2012-08-07 | 3 | -29/+36 | |
| | | ||||||
* | | locate: don't allow empty list | Max Kellermann | 2012-08-07 | 3 | -33/+9 | |
| | | ||||||
* | | locate: pass unsigned integer to _parse() | Max Kellermann | 2012-08-07 | 2 | -2/+2 | |
| | | ||||||
* | | locate: add "pure" attributes | Max Kellermann | 2012-08-07 | 2 | -0/+5 | |
| | | ||||||
* | | DatabaseCommands: remove stray locate_item_list_parse() call | Max Kellermann | 2012-08-07 | 1 | -2/+0 | |
| | | ||||||
* | | locate: add "casefold" flag to parser | Max Kellermann | 2012-08-07 | 8 | -72/+26 | |
| | | | | | | | | | | Fold the case during construction, without having to create another copy. | |||||
* | | locate: remove unused function locate_item_free() | Max Kellermann | 2012-08-07 | 2 | -11/+0 | |
| | | ||||||
* | | db_selection: rename to DatabaseSelection | Max Kellermann | 2012-08-07 | 11 | -60/+36 | |
| | | ||||||
* | | db_print.h: rename to DatabasePrint.hxx | Max Kellermann | 2012-08-07 | 3 | -9/+9 | |
| | | ||||||
* | | dbUtils.h: move to DatabaseQueue.hxx, DatabasePlaylist.hxx | Max Kellermann | 2012-08-07 | 7 | -18/+77 | |
| | | ||||||
* | | command: move code to DatabaseCommands.cxx | Max Kellermann | 2012-08-07 | 3 | -238/+349 | |
| | | | | | | | | Prepare to use the DatabasePlugin C++ API directly. | |||||
* | | command: move print_error() to CommandError.cxx | Max Kellermann | 2012-08-07 | 4 | -104/+178 | |
| | | | | | | | | Prepare for splitting command.c. | |||||
* | | Database{Plugin,Visitor}: pass references | Max Kellermann | 2012-08-07 | 9 | -83/+87 | |
| | | ||||||
* | | DatabaseRegistry: list of plugins | Max Kellermann | 2012-08-07 | 2 | -0/+75 | |
| | | ||||||
* | | DatabaseGlue: remove db_walk(), db_visit() | Max Kellermann | 2012-08-02 | 2 | -61/+0 | |
| | | | | | | | | Unused. | |||||
* | | stats: convert to C++ | Max Kellermann | 2012-08-02 | 1 | -26/+31 | |
| | | ||||||
* | | db_print: convert to C++ | Max Kellermann | 2012-08-02 | 1 | -154/+91 | |
| | | ||||||
* | | dbUtils: split to Database{Queue,Playlist}.cxx | Max Kellermann | 2012-08-02 | 3 | -209/+182 | |
| | | ||||||
* | | DatabaseGlue: add function GetDatabase() | Max Kellermann | 2012-08-02 | 2 | -0/+44 | |
| | | | | | | | | Allow using the object outside of DatabaseGlue.cxx. | |||||
* | | DatabasePlugin: add simpler Visit() wrapepr | Max Kellermann | 2012-08-02 | 1 | -0/+13 | |
| | | ||||||
* | | DatabasePlugin: make Visit() const | Max Kellermann | 2012-08-02 | 3 | -6/+6 | |
| | | ||||||
* | | gcc.h: re-add gcc_const and gcc_pure | Max Kellermann | 2012-08-02 | 28 | -92/+123 | |
| | | | | | | | | Remove GLib dependency from some headers. | |||||
* | | DatabaseVisitor, ...: use GError forward declaration | Max Kellermann | 2012-08-02 | 29 | -29/+69 | |
| | | ||||||
* | | db_plugin: convert to C++ | Max Kellermann | 2012-08-01 | 9 | -388/+362 | |
| | | ||||||
* | | gcc.h: require g++ 4.5 or newer | Max Kellermann | 2012-08-01 | 1 | -0/+4 | |
| | | | | | | | | Soon we'll use C++11 lambdas which were implemented in gcc 4.5. | |||||
* | | gcc.h: add fallback for C++11 "override" | Max Kellermann | 2012-08-01 | 1 | -0/+9 | |
| | | ||||||
* | | decoder/sidplay: fix C++ compiler warnings | Max Kellermann | 2012-08-01 | 1 | -4/+4 | |
| | | ||||||
* | | util/list: make safe for C++ | Max Kellermann | 2012-08-01 | 1 | -24/+25 | |
|/ | ||||||
* | tcp_socket, ...: remove obsolet RAOP sources | Max Kellermann | 2012-07-30 | 6 | -976/+0 | |
| | ||||||
* | tag_ape: return false if no usable tag was found | Max Kellermann | 2012-07-29 | 1 | -7/+21 | |
| | | | | | | | Ignore APE tags that have no usable tags, and use the ID3 tag instead. This is useful when the APE tag only contains replay gain, and the real tags are stored as ID3. This implements feature request Mantis #0003521. | |||||
* | cue_parser: support file types "MP3", "AIFF" | Max Kellermann | 2012-07-26 | 1 | -1/+3 | |
| | | | | These two strings are common "FILE" types. | |||||
* | Add song duration to DSF and DSDIFF DSD decoders. | Jurgen Kramer | 2012-07-13 | 2 | -3/+24 | |
| |