aboutsummaryrefslogtreecommitdiffstats
path: root/src/db/plugins (unfollow)
Commit message (Collapse)AuthorFilesLines
2015-11-11db/simple: use StringAfterPrefix() instead of StringStartsWith()Max Kellermann2-21/+20
2015-11-06util/StringUtil: move comparison functions to StringCompare.cxxMax Kellermann2-2/+2
2015-10-19util/DeleteDisposer: new utility classMax Kellermann2-9/+5
2015-09-30util/StringView: new utility classMax Kellermann1-14/+5
2015-08-24db/UniqueTags, tag/Set, ...: use typedef tag_mask_tMax Kellermann6-8/+8
2015-08-24tag/Settings: convert to C++Max Kellermann1-1/+1
2015-08-24tag/Settings: add function IsTagEnabled() wrapping access to ignore_tag_items[]Max Kellermann1-2/+2
2015-06-25SongFilter: return "const char *" instead of std::stringMax Kellermann2-6/+6
2015-03-03storage/local: convert mangled URI to FS charsetMax Kellermann1-1/+5
2015-03-01db/simple: eliminate UpdateFileInArchive() if archive API is disabledMax Kellermann1-0/+4
Reduce some unnecessary overhead.
2015-02-28fs/FileInfo: new library providing GetFileInfo()Max Kellermann1-18/+14
Replaces StatFile(), with a portable data object.
2015-02-27fs/FileSystem: merge CheckAccess() into PathExists()Max Kellermann1-1/+1
PathExists() should better do what CheckAccess() does, and CheckAccess() doesn't do what its name implies.
2015-02-02lib/upnp/Discovery: apply naming conventionMax Kellermann1-4/+4
2015-01-21config/Param: split block-specific attributes to new struct ConfigBlockMax Kellermann4-25/+25
The old struct config_param remains only for top-level string options.
2015-01-21ConfigData: move struct config_param to Param.hxxMax Kellermann3-3/+3
2015-01-15db/plugins/ProxyDatabasePlugin: add "keepalive" parameterJoshua Wise1-0/+6
2015-01-01Copyright year 2015Max Kellermann28-28/+28
2014-12-26db/simple: fix implicit nullptr/bool conversionMax Kellermann1-3/+3
Return false on error, not nullptr.
2014-12-26fs/Traits, ...: work around -Wtautological-pointer-compareMax Kellermann1-1/+4
New in clang 3.6.
2014-12-26db/lazy, input/mms: add "override" keywordsMax Kellermann2-3/+5
Fixes -Winconsistent-missing-override (clang 3.6).
2014-11-28Compiler.h: add macro CLANG_OR_GCC_VERSION()Max Kellermann1-1/+1
2014-11-21configure.ac: add macro MPD_ENABLE_AUTO_PKGMax Kellermann2-10/+10
Simplify the definition of many build options.
2014-11-09db/upnp/Directory: TitleToPathSegment() returns rvalue referenceMax Kellermann1-2/+2
Eliminate one implicit std::string copy.
2014-11-09db/upnp/Directory: apply coding styleMax Kellermann1-23/+23
2014-11-08db/upnp/Directory: move checkobjok() to class UPnPDirObjectMax Kellermann2-11/+9
2014-11-08db/upnp/Object: apply coding styleMax Kellermann3-21/+28
2014-11-07db/upnp: fix valgrind warningMax Kellermann1-0/+1
2014-10-10db/upnp/Util: move caturl() to util/UriUtil.cxxMax Kellermann1-0/+1
2014-09-27Add MusicBrainz' Release Track Id tagWieland Hoffmann1-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
2014-09-18db/proxy: support empty values in VisitUniqueTags()Max Kellermann1-0/+9
Workaround for assertion failure in PrintUniqueTag().
2014-08-30db/simple: fix build failure without zlibMax Kellermann1-1/+4
2014-08-29db/Stats: use std::chrono::duration for the total durationMax Kellermann1-1/+1
Use milliseconds precision to reduce rounding errors.
2014-08-29db/upnp: use DatabaseStats::Clear()Max Kellermann1-4/+1
2014-08-29Tag: use SignedSongTime for the song durationMax Kellermann2-7/+10
2014-08-28db/simple/Song: use std::chrono::duration for start_ms and end_msMax Kellermann2-9/+11
2014-08-28db/LightSong: use std::chrono::duration for start_ms and end_msMax Kellermann3-7/+7
2014-08-28DetachedSong: use std::chrono::duration for start_ms and end_msMax Kellermann1-2/+2
2014-08-11db/simple: check for I/O errors in Load()Max Kellermann1-1/+1
2014-08-11db/simple: compress the database file using gzipMax Kellermann2-5/+60
2014-08-07fs/io/BufferedReader: new class to replace class TextFileMax Kellermann1-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.
2014-08-07fs/output, fs/TextFile: move to fs/io/Max Kellermann3-7/+7
2014-07-30*Save, *State: use the OutputStream API instead of FILE*Max Kellermann5-37/+33
2014-07-29db/proxy: implement Update()Max Kellermann1-0/+19
2014-06-23db/proxy: use mpd_song_get_{start,end}() only with libmpdclient >= 2.3Max Kellermann1-0/+5
2014-06-21db/proxy: initialize LightSong::real_uriMax Kellermann1-0/+1
Fixes potential crash.
2014-06-16Directory: eliminate attribute "have_stat"Max Kellermann2-2/+2
Check for 0 in "device" and "inode" instead.
2014-06-16db/simple: use class boost::intrusive::listMax Kellermann6-103/+114
Remove the C list_head library and use type-safe C++ instead.
2014-04-25db/Helpers: split libraryMax Kellermann1-0/+1
2014-04-24DatabaseCommands: "list" allows groupingMax Kellermann6-21/+33
2014-03-06db/proxy: check connect error before initializing SocketMonitorMax Kellermann1-7/+7
Fixes crash bug because mpd_connection_get_async() was called without a connection.