aboutsummaryrefslogtreecommitdiffstats
path: root/src/db (follow)
Commit message (Collapse)AuthorAgeFilesLines
* db/proxy: support empty values in VisitUniqueTags()Max Kellermann2014-09-181-0/+9
| | | | Workaround for assertion failure in PrintUniqueTag().
* *: add missing Compiler.h includesMax Kellermann2014-08-305-0/+5
| | | | Necessary for "final" on gcc 4.6.
* db/simple: fix build failure without zlibMax Kellermann2014-08-301-1/+4
|
* db/Stats: use std::chrono::duration for the total durationMax Kellermann2014-08-293-4/+6
| | | | Use milliseconds precision to reduce rounding errors.
* db/upnp: use DatabaseStats::Clear()Max Kellermann2014-08-291-4/+1
|
* db/Count: use std::chrono::duration for the total timeMax Kellermann2014-08-291-6/+9
| | | | Use milliseconds precision to reduce rounding errors.
* Tag: use SignedSongTime for the song durationMax Kellermann2014-08-296-19/+27
|
* db/simple/Song: use std::chrono::duration for start_ms and end_msMax Kellermann2014-08-282-9/+11
|
* db/LightSong: use std::chrono::duration for start_ms and end_msMax Kellermann2014-08-285-14/+15
|
* DetachedSong: use std::chrono::duration for start_ms and end_msMax Kellermann2014-08-281-2/+2
|
* db/simple: check for I/O errors in Load()Max Kellermann2014-08-111-1/+1
|
* db/simple: compress the database file using gzipMax Kellermann2014-08-112-5/+60
|
* fs/io/BufferedReader: new class to replace class TextFileMax Kellermann2014-08-071-5/+2
| | | | | | | The new class is pluggable, to prepare for gzipped database files. For now, the TextFile class remains, and will be refactored away later.
* fs/output, fs/TextFile: move to fs/io/Max Kellermann2014-08-073-7/+7
|
* db/update/InotifySource: remove FifoBufferMax Kellermann2014-08-062-16/+15
| | | | | Eliminate support for partial reads. The Linux kernel will never return partial results, so this buffering was unnecessary.
* *Save, *State: use the OutputStream API instead of FILE*Max Kellermann2014-07-305-37/+33
|
* db/proxy: implement Update()Max Kellermann2014-07-291-0/+19
|
* db/Interface: add virtual method Update()Max Kellermann2014-07-291-0/+12
| | | | For database plugins that don't use the UpdateService.
* Tag: add class const_iterator and methods begin(), end()Max Kellermann2014-07-123-9/+3
| | | | Enables using range-based "for".
* Merge branch 'v0.18.x'Max Kellermann2014-06-233-1/+42
|\
| * db/proxy: fall back to recursive walk on old libmpdclient/MPDMax Kellermann2014-06-231-1/+21
| | | | | | | | | | Error message was 'too few arguments for "find"' because the "base" constraint was not supported, and no other constraints remained.
| * db/proxy: use mpd_song_get_{start,end}() only with libmpdclient >= 2.3Max Kellermann2014-06-231-0/+5
| |
* | db/proxy: use mpd_song_get_{start,end}() only with libmpdclient >= 2.3Max Kellermann2014-06-231-0/+5
| |
* | db/proxy: initialize LightSong::real_uriMax Kellermann2014-06-211-0/+1
| | | | | | | | Fixes potential crash.
* | Directory: eliminate attribute "have_stat"Max Kellermann2014-06-163-4/+3
| | | | | | | | Check for 0 in "device" and "inode" instead.
* | db/simple: use class boost::intrusive::listMax Kellermann2014-06-168-144/+151
| | | | | | | | Remove the C list_head library and use type-safe C++ instead.
* | db/Count: implement groupingMax Kellermann2014-04-272-7/+82
| |
* | db/Count: add constructorMax Kellermann2014-04-271-2/+3
| |
* | DatabasePrint: move PrintSongCount() to Count.cxxMax Kellermann2014-04-264-54/+110
| |
* | db/Helpers: split libraryMax Kellermann2014-04-255-47/+98
| |
* | DatabasePrint: refactor variable/function namesMax Kellermann2014-04-252-21/+21
| |
* | db/Helpers: move code to tag/Set.cxxMax Kellermann2014-04-241-88/+1
| |
* | db/Helpers: move TagSet to dedicated headerMax Kellermann2014-04-241-24/+1
| |
* | db/Helpers: use set::emplace()Max Kellermann2014-04-241-0/+8
| |
* | DatabasePrint: eliminate printAllIn(), printInfoForAllIn()Max Kellermann2014-04-242-24/+0
| |
* | DatabasePrint: merge adjacent client_printf() callsMax Kellermann2014-04-241-2/+4
| |
* | DatabasePrint: pass const SearchStats referenceMax Kellermann2014-04-241-4/+5
| |
* | DatabasePrint: use unsigned countsMax Kellermann2014-04-241-3/+3
| |
* | DatabaseCommands: "list" allows groupingMax Kellermann2014-04-2412-42/+166
| |
* | db/Helpers: "list" on album artist falls back to the artist tagMax Kellermann2014-04-241-1/+4
| |
* | db/Helpers: move code to CheckUniqueTag()Max Kellermann2014-04-241-6/+12
| |
* | db/Helpers: use reference instead of pointerMax Kellermann2014-04-241-4/+6
| |
* | DatabaseCommands: fix crash on "list base"Max Kellermann2014-04-241-0/+2
| | | | | | | | | | | | The string "base" is understood by locate_parse_type(), but not by listAllUniqueTags(). The special tag type LOCATE_TAG_BASE_TYPE causes a crash in PrintUniqueTag().
* | DatabasePrint: convert "type" to unsignedMax Kellermann2014-04-242-2/+2
| |
* | db/proxy: check connect error before initializing SocketMonitorMax Kellermann2014-03-061-7/+7
| | | | | | | | | | Fixes crash bug because mpd_connection_get_async() was called without a connection.
* | fs/StandardDirectory: add GetUserCacheDir()Max Kellermann2014-03-011-15/+4
| | | | | | | | | | | | Move code from CreateConfiguredDatabase() and add XDG support. This implements an automatic Linux fallback for the setting "db_file" if none was specified.
* | db/Configured: store database file in cache directoryMax Kellermann2014-03-011-1/+25
| | | | | | | | | | Add class Context which wraps the Android/Java Context class and add a JNI wrapper for method Context.getCacheDir().
* | db/update/ExcludeList: make no-op if GLib is disabledMax Kellermann2014-03-012-0/+22
| | | | | | | | Quick hack to allow using the database without GLib (for Android).
* | command: add command "listfiles"Max Kellermann2014-03-012-28/+44
| | | | | | | | Lists files and directories. Supports storage plugins.
* | DatabasePrint: move code to PrintDirectoryURI()Max Kellermann2014-02-281-2/+8
| |