Age | Commit message (Expand) | Author |
2018-07-06 | TagFile: rename exported functions, use CamelCase | Max Kellermann |
2018-07-05 | tag/Handler: convert to class with virtual methods | Max Kellermann |
2018-06-22 | input/Stream: remove attribute "cond", replace with handler interface | Max Kellermann |
2018-02-24 | Merge tag 'v0.20.18' | Max Kellermann |
2018-02-24 | playlist/cue/Parser: parse tags after "INDEX 01" | Max Kellermann |
2018-01-23 | playlist/SoundCloud: fix -Wunused-lambda-capture | Max Kellermann |
2018-01-21 | playlist/Print: add "noexcept" | Max Kellermann |
2018-01-21 | playlist/Song: add "noexcept" | Max Kellermann |
2018-01-21 | playlist/Registry: add "noexcept" | Max Kellermann |
2018-01-21 | playlist/Plugin: add "noexcept" | Max Kellermann |
2018-01-20 | playlist/Queue: use "auto" | Max Kellermann |
2018-01-20 | playlist/SongEnumerator: allow NextSong() to throw exceptions | Max Kellermann |
2018-01-20 | playlist/SongEnumerator: add "noexcept" | Max Kellermann |
2018-01-20 | playlist/Plugin: use std::unique_ptr<SongEnumerator> | Max Kellermann |
2018-01-20 | playlist/Plugin: remove useless wrapper functions | Max Kellermann |
2018-01-11 | lib/yajl/Callbacks: OO wrapper for yajl_callbacks | Max Kellermann |
2018-01-11 | playlist/SoundCloud: move code to Yajl::Parse(InputStream&) | Max Kellermann |
2018-01-11 | playlist/SoundCloud: soundcloud_parse_json() throws exception | Max Kellermann |
2018-01-11 | lib/yajl/Handle: libyajl C++ bindings | Max Kellermann |
2017-12-19 | Main, ...: catch any exception, not just std::runtime_error | Max Kellermann |
2017-11-26 | playlist/{flac,m3u}: use std::make_unique | Max Kellermann |
2017-11-14 | Merge branch 'v0.20.x' | Max Kellermann |
2017-11-14 | playlist/PlaylistRegistry: use LockRewind() instead of Rewind() | Max Kellermann |
2017-09-21 | playlist/SoundCloud: move enum key into struct, make strictly-typed | Max Kellermann |
2017-09-21 | playlist/SoundCloud: use strcmp() instead of memcmp() to avoid buffer overflow | Max Kellermann |
2017-07-05 | util/StringUtil: move strip functions to StringStrip.cxx | Max Kellermann |
2017-05-19 | Merge tag 'v0.20.8' | Max Kellermann |
2017-05-19 | playlist/m3u: support for mime-type `audio-mpegurl` for M3U playlists | Mario Di Raimondo |
2017-05-15 | Merge tag 'v0.20.7' | Max Kellermann |
2017-05-08 | *: add "noexcept" to many, many function prototypes | Max Kellermann |
2017-02-24 | SongPrint: remove Storage::MapToRelativeUTF8() call | Max Kellermann |
2017-02-08 | SongLoader: return instance, not pointer | Max Kellermann |
2017-02-08 | tag/Tag: move tag_name_parse() to ParseName.cxx | Max Kellermann |
2017-02-08 | tag/Tag*: rename several source files | Max Kellermann |
2017-01-20 | playlist/SoundCloud: eliminate unnecessary casted variable | Max Kellermann |
2017-01-03 | update copyright year | Max Kellermann |
2017-01-03 | input/curl, ...: use strncmp() instead of memcmp() to avoid crash | Max Kellermann |
2017-01-03 | thread/Mutex: remove ScopeLock, use std::lock_guard directly | Max Kellermann |
2016-11-10 | util/Error: remove obsolete class | Max Kellermann |
2016-10-27 | queue/PlaylistUpdate: include cleanup | Max Kellermann |
2016-10-27 | LocateUri: migrate from class Error to C++ exceptions | Max Kellermann |
2016-10-26 | playlist/cue/CueParser: update API documentation | Max Kellermann |
2016-09-16 | input/InputStream: migrate from class Error to C++ exceptions | Max Kellermann |
2016-09-09 | input/Plugin: migrate open() from class Error to C++ exceptions | Max Kellermann |
2016-09-09 | playlist/SoundCloud: use AtScopeExit() | Max Kellermann |
2016-09-09 | playlist/SoundCloud: use std::string | Max Kellermann |
2016-09-09 | playlist/SoundCloud: implicit SoundCloudJsonData initialization | Max Kellermann |
2016-09-09 | playlist/SoundCloud: rename struct parse_data to SoundCloudJsonData | Max Kellermann |
2016-09-09 | playlist/SoundCloud: make parse_callbacks constexpr | Max Kellermann |
2016-09-09 | playlist/SoundCloud: use ScopeLock | Max Kellermann |