Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | SongFilter: return "const char *" instead of std::string | Max Kellermann | 2015-06-25 | 2 | -6/+6 |
| | |||||
* | storage/local: convert mangled URI to FS charset | Max Kellermann | 2015-03-03 | 1 | -1/+5 |
| | |||||
* | db/simple: eliminate UpdateFileInArchive() if archive API is disabled | Max Kellermann | 2015-03-01 | 1 | -0/+4 |
| | | | | Reduce some unnecessary overhead. | ||||
* | fs/FileInfo: new library providing GetFileInfo() | Max Kellermann | 2015-02-28 | 1 | -18/+14 |
| | | | | Replaces StatFile(), with a portable data object. | ||||
* | fs/FileSystem: merge CheckAccess() into PathExists() | Max Kellermann | 2015-02-27 | 1 | -1/+1 |
| | | | | | PathExists() should better do what CheckAccess() does, and CheckAccess() doesn't do what its name implies. | ||||
* | lib/upnp/Discovery: apply naming convention | Max Kellermann | 2015-02-02 | 1 | -4/+4 |
| | |||||
* | config/Param: split block-specific attributes to new struct ConfigBlock | Max Kellermann | 2015-01-21 | 4 | -25/+25 |
| | | | | The old struct config_param remains only for top-level string options. | ||||
* | ConfigData: move struct config_param to Param.hxx | Max Kellermann | 2015-01-21 | 3 | -3/+3 |
| | |||||
* | db/plugins/ProxyDatabasePlugin: add "keepalive" parameter | Joshua Wise | 2015-01-15 | 1 | -0/+6 |
| | |||||
* | Copyright year 2015 | Max Kellermann | 2015-01-01 | 28 | -28/+28 |
| | |||||
* | Merge branch 'v0.19.x' | Max Kellermann | 2014-12-26 | 5 | -14/+19 |
|\ | |||||
| * | db/simple: fix implicit nullptr/bool conversion | Max Kellermann | 2014-12-26 | 1 | -3/+3 |
| | | | | | | | | | | Return false on error, not nullptr. | ||||
| * | fs/Traits, ...: work around -Wtautological-pointer-compare | Max Kellermann | 2014-12-26 | 1 | -1/+4 |
| | | | | | | | | New in clang 3.6. | ||||
| * | db/lazy, input/mms: add "override" keywords | Max Kellermann | 2014-12-26 | 2 | -3/+5 |
| | | | | | | | | Fixes -Winconsistent-missing-override (clang 3.6). | ||||
| * | Merge branch 'v0.18.x' into v0.19.x | Max Kellermann | 2014-12-26 | 2 | -7/+7 |
| | | |||||
* | | 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(). |