summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2016-02-26db/update/Archive: pass ArchiveFile to Song constructorMax Kellermann
Don't open the ZIP file again and again for each song file.
2016-02-26SongUpdate: add UpdateFileInArchive(ArchiveFile&)Max Kellermann
2016-02-26TagArchive: add overload with ArchiveFile&Max Kellermann
2016-02-26TagArchive: add TagBuilder overload with ScanGenericTags() fallbackMax Kellermann
Load APE/ID3 tags from archives.
2016-02-26tag/TagId3: re-add missing tag_id3_load()==nullptr checkMax Kellermann
2016-02-26TagStream: add TagBuilder overload with ScanGenericTags() fallbackMax Kellermann
This commit adds support for APE/ID3 tags from NFS/SMB files. See http://bugs.musicpd.org/view.php?id=4270
2016-02-26TagFile: add TagBuilder overload with ScanGenericTags() fallbackMax Kellermann
2016-02-26TagArchive: use InputStreamPtrMax Kellermann
2016-02-26tag/Generic: use InputStream::LockRewind() instead of Rewind()Max Kellermann
Fixes deadlock.
2016-02-24tag/Generic: clarify documentation on InputStream overloadMax Kellermann
2016-02-24tag/Generic: remove redundant documentationMax Kellermann
2016-02-23Merge tag 'v0.19.13'Max Kellermann
release v0.19.13
2016-02-23queue/Playlist: move only the tag items in TagModified()Max Kellermann
Fixes disappearing duration of remote songs during playback. See http://bugs.musicpd.org/view.php?id=4492
2016-02-23DetachedSong: add method MoveTagItemsFrom()Max Kellermann
2016-02-23tag/Tag: move code to MoveItemsFrom()Max Kellermann
2016-02-23configure.ac, unix/Daemon: check for initgroups() at configure timeMax Kellermann
The initgroups() manpage says we need to check for _BSD_SOURCE. The thing is that glibc deprecated this macro, and doesn't define it anymore, effectively breaking all MPD supplementary groups. The real fix is to check for initgroups() availability at configure time, instead of relying on the deprecated _BSD_SOURCE macro.
2016-02-23tag/TagId3: eliminate dummy function when libid3tag is disabledMax Kellermann
2016-02-23tag/{Id3,Ape}: remove Path overloadsMax Kellermann
2016-02-23decoder/thread: open InputStream in decoder_run_file() in any caseMax Kellermann
decoder_load_replay_gain() will create the InputStream anyway, so we're not saving any overhead by opening the InputStream on demand only.
2016-02-23decoder/thread: use typedef InputStreamPtrMax Kellermann
2016-02-23decoder/thread: load APE replay gain from remote filesMax Kellermann
2016-02-23tag/ApeReplayGain: add overload with InputStream& parameterMax Kellermann
2016-02-23tag/Generic: use common InputStream for APE and ID3Max Kellermann
2016-02-23tag/Generic: add overload with InputStream& parameterMax Kellermann
2016-02-23tag/TagId3: add overload with InputStream& parameterMax Kellermann
2016-02-23tag/TagHandler: pass by referenceMax Kellermann
2016-02-22SongUpdate: move tag_scan_fallback() to tag/Generic.cxxMax Kellermann
2016-02-22tag/ApeLoader: use CamelCaseMax Kellermann
2016-02-22tag/ApeLoader: use std::unique_ptrMax Kellermann
2016-02-22tag/handler: use CamelCaseMax Kellermann
2016-02-22tag/ApeLoader: use class InputStream instead of FILE*Max Kellermann
Prepare for APE tag support on userspace NFS/SMB/CIFS mounts.
2016-02-22tag/Id3Load: use class InputStream instead of FILE*Max Kellermann
Prepare for ID3 support on userspace NFS/SMB/CIFS mounts.
2016-02-22playlist/Stream, db/upnp: add missing includesMax Kellermann
2016-02-22tag/Id3Load: optimized ID3v1 loaderMax Kellermann
Use a 128 byte buffer instead of reading 10 bytes first and then 118.
2016-02-22tag/Id3Load: simplify end offset calculationMax Kellermann
2016-02-22tag/Id3Load: add constant ID3V1_SIZEMax Kellermann
2016-02-22tag/Id3Load: use ID3_TAG_QUERYSIZE instead of integer literalMax Kellermann
2016-02-22input/InputStream: add method Skip()Max Kellermann
2016-02-21tag/Id3Load: remove unnecessary seekMax Kellermann
2016-02-21archive/bzip2: remove HAVE_OLDER_BZIP2 checkMax Kellermann
The check was added in commit 98fd9b7d, but there was never a definition.
2016-02-21archive/bzip2: convert struct to classMax Kellermann
2016-02-21archive/bzip2: move bz2_fillbuffer into struct Bzip2InputStreamMax Kellermann
2016-02-21archive/bzip2: use C++11 initializerMax Kellermann
2016-02-21playlist/Plugin: pass InputStreamPtr&& to open_stream()Max Kellermann
Obsolete class CloseSongEnumerator, which was a kludge.
2016-02-21input: wrap InputStream in std::unique_ptrMax Kellermann
2016-02-21tag/Id3Load: split tag_id3_read()Max Kellermann
2016-02-19tag/Id3Load: don't seek twice in tag_id3_read()Max Kellermann
Copy the query buffer to the allocated buffer, and read only the remaining data.
2016-02-19tag/Id3Load: don't read again if we already have enough dataMax Kellermann
2016-02-19tag/Id3Load: manage id3_tag* with std::unique_ptrMax Kellermann
2016-02-19tag/TagId3: move tag_id3_load() to Id3Load.cxxMax Kellermann