Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | Compiler.h: add macro CLANG_OR_GCC_VERSION() | Max Kellermann | 2014-11-28 | 1 | -1/+1 |
| | |||||
* | configure.ac: add macro MPD_ENABLE_AUTO_PKG | Max Kellermann | 2014-11-21 | 2 | -10/+10 |
| | | | | Simplify the definition of many build options. | ||||
* | db/upnp/Directory: TitleToPathSegment() returns rvalue reference | Max Kellermann | 2014-11-09 | 1 | -2/+2 |
| | | | | Eliminate one implicit std::string copy. | ||||
* | db/upnp/Directory: apply coding style | Max Kellermann | 2014-11-09 | 1 | -23/+23 |
| | |||||
* | db/upnp/Directory: move checkobjok() to class UPnPDirObject | Max Kellermann | 2014-11-08 | 2 | -11/+9 |
| | |||||
* | db/upnp/Object: apply coding style | Max Kellermann | 2014-11-08 | 3 | -21/+28 |
| | |||||
* | db/upnp: fix valgrind warning | Max Kellermann | 2014-11-07 | 1 | -0/+1 |
| | |||||
* | db/upnp/Util: move caturl() to util/UriUtil.cxx | Max Kellermann | 2014-10-10 | 1 | -0/+1 |
| | |||||
* | Add MusicBrainz' Release Track Id tag | Wieland Hoffmann | 2014-09-27 | 1 | -0/+4 |
| | | | | | | | | | | The Release Track Id uniquely identifies a recording on a release - that is, even if a recording appears twice on a release (meaning that the combination of recording and release id are not enough to figure out which one it is), the release track id will allow differentiating the two. The tag names are taken from https://musicbrainz.org/doc/MusicBrainz_Picard/Tags/Mapping | ||||
* | db/proxy: support empty values in VisitUniqueTags() | Max Kellermann | 2014-09-18 | 1 | -0/+9 |
| | | | | Workaround for assertion failure in PrintUniqueTag(). | ||||
* | db/simple: fix build failure without zlib | Max Kellermann | 2014-08-30 | 1 | -1/+4 |
| | |||||
* | db/Stats: use std::chrono::duration for the total duration | Max Kellermann | 2014-08-29 | 1 | -1/+1 |
| | | | | Use milliseconds precision to reduce rounding errors. | ||||
* | db/upnp: use DatabaseStats::Clear() | Max Kellermann | 2014-08-29 | 1 | -4/+1 |
| | |||||
* | Tag: use SignedSongTime for the song duration | Max Kellermann | 2014-08-29 | 2 | -7/+10 |
| | |||||
* | db/simple/Song: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 2 | -9/+11 |
| | |||||
* | db/LightSong: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 3 | -7/+7 |
| | |||||
* | DetachedSong: use std::chrono::duration for start_ms and end_ms | Max Kellermann | 2014-08-28 | 1 | -2/+2 |
| | |||||
* | db/simple: check for I/O errors in Load() | Max Kellermann | 2014-08-11 | 1 | -1/+1 |
| | |||||
* | db/simple: compress the database file using gzip | Max Kellermann | 2014-08-11 | 2 | -5/+60 |
| | |||||
* | fs/io/BufferedReader: new class to replace class TextFile | Max Kellermann | 2014-08-07 | 1 | -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 Kellermann | 2014-08-07 | 3 | -7/+7 |
| | |||||
* | *Save, *State: use the OutputStream API instead of FILE* | Max Kellermann | 2014-07-30 | 5 | -37/+33 |
| | |||||
* | db/proxy: implement Update() | Max Kellermann | 2014-07-29 | 1 | -0/+19 |
| | |||||
* | Merge branch 'v0.18.x' | Max Kellermann | 2014-06-23 | 1 | -1/+21 |
| | |||||
* | db/proxy: use mpd_song_get_{start,end}() only with libmpdclient >= 2.3 | Max Kellermann | 2014-06-23 | 1 | -0/+5 |
| | |||||
* | db/proxy: initialize LightSong::real_uri | Max Kellermann | 2014-06-21 | 1 | -0/+1 |
| | | | | Fixes potential crash. | ||||
* | Directory: eliminate attribute "have_stat" | Max Kellermann | 2014-06-16 | 2 | -2/+2 |
| | | | | Check for 0 in "device" and "inode" instead. | ||||
* | db/simple: use class boost::intrusive::list | Max Kellermann | 2014-06-16 | 6 | -103/+114 |
| | | | | Remove the C list_head library and use type-safe C++ instead. | ||||
* | db/Helpers: split library | Max Kellermann | 2014-04-25 | 1 | -0/+1 |
| | |||||
* | DatabaseCommands: "list" allows grouping | Max Kellermann | 2014-04-24 | 6 | -21/+33 |
| | |||||
* | db/proxy: check connect error before initializing SocketMonitor | Max Kellermann | 2014-03-06 | 1 | -7/+7 |
| | | | | | Fixes crash bug because mpd_connection_get_async() was called without a connection. | ||||
* | db/simple: mount points | Max Kellermann | 2014-02-27 | 8 | -6/+386 |
| | | | | | | | | A SimpleDatabase instance can now "mount" other Database instances at certain locations. This is used to use a new SimpleDatabase instance for each storage mount (issued with the "mount" protocol command). Each such instance has its own database file, stored in the directory that is specified with the "cache_directory" option. | ||||
* | db/simple: GetRoot() returns reference | Max Kellermann | 2014-02-27 | 1 | -2/+2 |
| | |||||
* | db/simple/Directory: eliminate method LookupSong() | Max Kellermann | 2014-02-26 | 3 | -30/+19 |
| | | | | Move to SimpleDatabase::GetSong() to give that method more control. | ||||
* | db/simple/Directory: LookupDirectory() return remaining URI | Max Kellermann | 2014-02-26 | 3 | -41/+62 |
| | | | | Code can now be reused in LookupSong(). | ||||
* | db/simple/Directory: make variables more local | Max Kellermann | 2014-02-26 | 1 | -4/+2 |
| | |||||
* | db/Directory: add DEVICE_* documentation | Max Kellermann | 2014-02-26 | 1 | -0/+10 |
| | |||||
* | db/simple: create dedicated directory | Max Kellermann | 2014-02-26 | 12 | -3/+1334 |
| | |||||
* | db/simple: remove unused method LookupDirectory() | Max Kellermann | 2014-02-25 | 2 | -14/+0 |
| | |||||
* | db/simple: make internal methods "private" | Max Kellermann | 2014-02-25 | 1 | -1/+1 |
| | |||||
* | db/simple: add comment | Max Kellermann | 2014-02-25 | 1 | -0/+1 |
| | |||||
* | db/simple: move Create() up | Max Kellermann | 2014-02-25 | 1 | -4/+4 |
| | |||||
* | db/upnp: move plugin source to upnp directory | Max Kellermann | 2014-02-19 | 2 | -2/+2 |
| | |||||
* | DatabasePlugin: add FLAG_REQUIRE_STORAGE | Max Kellermann | 2014-02-19 | 2 | -2/+2 |
| | | | | | Ignore the storage configuration if FLAG_REQUIRE_STORAGE is not set in the DatabasePlugin. | ||||
* | DatabasePlugin: add attribute "flags" | Max Kellermann | 2014-02-19 | 3 | -0/+3 |
| | |||||
* | db/Interface: add attribute "plugin" | Max Kellermann | 2014-02-19 | 6 | -5/+13 |
| | | | | The new method IsPlugin() replaces the "is_simple" flag. | ||||
* | DatabasePlugin: split header | Max Kellermann | 2014-02-19 | 6 | -2/+13 |
| | |||||
* | db/proxy: include cleanup | Max Kellermann | 2014-02-04 | 1 | -1/+0 |
| | |||||
* | Instance: add Database attribute | Max Kellermann | 2014-02-04 | 1 | -0/+3 |
| | | | | Move from db/DatabaseGlue.cxx, eliminating global variable. | ||||
* | db/update/Service: add SimpleDatabase reference | Max Kellermann | 2014-02-04 | 1 | -0/+4 |
| | | | | Don't use the global variables from the DatabaseSimple library. |