Age | Commit message (Collapse) | Author | |
---|---|---|---|
2019-02-19 | fs/io/OutputStream: update include guard | Max Kellermann | |
2019-02-19 | fs/io/BufferedOutputStream: add WithBufferedOutputStream() | Max Kellermann | |
2019-01-22 | fs/io/StdioOutputStream: add `noexcept` | Max Kellermann | |
2019-01-21 | fs/io/FileOutputStream: add constructor with directory fd | Max Kellermann | |
2019-01-21 | fs/io/FileOutputStream: move code to Open() | Max Kellermann | |
2018-11-19 | check.h: remove obsolete header | Max Kellermann | |
Since we switched from autotools to Meson in commit 94592c14062d5afc9482d11baa401648082022c0, we don't need to include `config.h` early to properly enable large file support. Meson passes the required macros on the compiler command line instead of defining them in `config.h`. This means we can include `config.h` at any time, whenever we want to check its macros, and there are no ordering constraints. | |||
2018-10-31 | *: copyright year 2018 | Max Kellermann | |
2018-10-31 | fs/io/FileOutputStream: fix -Wcomment | Max Kellermann | |
2018-10-31 | fs/io/FileOutputStream: don't use O_TMPFILE on Android | Max Kellermann | |
Fixes writing to Context.getCacheDir(). | |||
2018-10-31 | fs/io/FileOutputStream: add macro HAVE_O_TMPFILE | Max Kellermann | |
2018-10-31 | fs/StandardDirectory: move USE_XDG to XDG.hxx | Max Kellermann | |
2018-10-14 | build with Meson instead of autotools | Max Kellermann | |
So long, autotools! This is my last MPD related project to migrate away from it. It has its strengths, but also very obvious weaknesses and weirdnesses. Today, many of its quirks are not needed anymore, and are cumbersome and slow. Now welcome our new Meson overlords! | |||
2018-09-03 | fs/io/FileOutputStream: disallow copying | Max Kellermann | |
2018-08-21 | fs/io/FileOutputStream: make linkat() mandatory on Linux | Max Kellermann | |
2018-08-21 | fs/io/FileOutputStream: add "noexcept" | Max Kellermann | |
2018-08-21 | fs/io/BufferedReader: add "noexcept" to constructor | Max Kellermann | |
2018-08-21 | system/Open: new UniqueFileDescriptor constructing library | Max Kellermann | |
2018-08-21 | fs/io/FileReader: use class UniqueFileDescriptor | Max Kellermann | |
2018-08-21 | fs/io/FileReader: use std::exchange() | Max Kellermann | |
2018-08-21 | fs/io/FileReader: add "noexcept" | Max Kellermann | |
2018-08-21 | fs/io/FileReader: simplify includes | Max Kellermann | |
2018-08-20 | Compiler.h: move to util/ | Max Kellermann | |
2018-07-19 | fs/io/OutputStream: relicense under BSD-2 | Max Kellermann | |
2018-07-18 | fs/List: new library exporting ListWildcard() | Max Kellermann | |
2018-07-18 | fs/Path: add method ToUTF8Throw() | Max Kellermann | |
2018-07-18 | fs/AllocatedPath: divert some methods to class Path | Max Kellermann | |
Eliminate duplicate code. | |||
2018-07-18 | fs/CheckFile: remove variable path_utf8 | Max Kellermann | |
2018-07-18 | fs/Traits: add Apply() | Max Kellermann | |
2018-07-18 | fs/{,Allocated}Path: add typedef Traits | Max Kellermann | |
2018-07-17 | fs/Config: use struct ConfigData | Max Kellermann | |
2018-07-17 | fs/Path: add operator/(Path,Path) | Max Kellermann | |
Modeled after std::filesystem::operator/() from C++17. | |||
2018-07-16 | config/Config*: rename files, drop "Config" prefix | Max Kellermann | |
2018-01-24 | util/StringFormat: new utility library | Max Kellermann | |
2018-01-17 | fs/AllocatedPath: make the nullptr_t constructor public | Max Kellermann | |
2018-01-17 | fs/Path: replace method Null() with nullptr_t constructor | Max Kellermann | |
2017-12-27 | fs/AllocatedPath: drop obsolete GCC check | Max Kellermann | |
2017-12-19 | Main, ...: catch any exception, not just std::runtime_error | Max Kellermann | |
2017-12-16 | Merge branch 'v0.20.x' | Max Kellermann | |
2017-12-12 | *: check defined(_WIN32) instead of defined(WIN32) | Max Kellermann | |
Only _WIN32 is defined by the compiler, and WIN32 is not standardized and may be missing. Closes #169 | |||
2017-11-10 | util/{Const,Writable}Buffer, ...: rename IsEmpty() to empty(), imitating STL | Max Kellermann | |
2017-08-10 | fs/FileSystem: use UniqueFileDescriptor in TruncateFile() | Max Kellermann | |
2017-08-10 | fs/FileSystem: OpenFile() returns UniqueFileDescriptor | Max Kellermann | |
2017-07-05 | util/StringUtil: move strip functions to StringStrip.cxx | Max Kellermann | |
2017-06-04 | Merge tag 'v0.20.9' | Max Kellermann | |
release v0.20.9 | |||
2017-06-04 | *: add lost of "noexcept" specifications | Max Kellermann | |
2017-05-15 | Merge tag 'v0.20.7' | Max Kellermann | |
release v0.20.7 | |||
2017-05-08 | *: remove "pure" and "const" attributes from throwing functions | Max Kellermann | |
The "pure" and "const" attributes are not so well-defined, and a recent clang version implements an optimization which pushes the definition's boundary beyond what I believed it was. clang now assumes that functions declared "pure" cannot throw exceptions, even if they lack the "noexcept" specification. When compiled with this new clang version, MPD will crash randomly if an exception happens to get thrown by such as "pure" function (https://github.com/MusicPlayerDaemon/MPD/issues/41). This commit removes all such misplaced "pure" and "const" attributes, closing #41. | |||
2017-05-08 | *: add "noexcept" to many, many function prototypes | Max Kellermann | |
This eliminates some overhead, because the compiler doesn't need to consider these functions throwing. | |||
2017-02-24 | fs/Traits: allow base to end with a slash in Relative() | Max Kellermann | |
Fixes false negatives: http://foo/dav/example.ogg mismatches http://foo/dav/ .. because StringAfterPrefix() returns just "example.ogg", without trailing slash (it existed, but was eaten already by the base matcher). | |||
2017-02-10 | fs/FileInfo: use std::chrono::system_clock | Max Kellermann | |