summaryrefslogtreecommitdiff
path: root/src/fs
AgeCommit message (Collapse)Author
2019-02-19fs/io/OutputStream: update include guardMax Kellermann
2019-02-19fs/io/BufferedOutputStream: add WithBufferedOutputStream()Max Kellermann
2019-01-22fs/io/StdioOutputStream: add `noexcept`Max Kellermann
2019-01-21fs/io/FileOutputStream: add constructor with directory fdMax Kellermann
2019-01-21fs/io/FileOutputStream: move code to Open()Max Kellermann
2018-11-19check.h: remove obsolete headerMax 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 2018Max Kellermann
2018-10-31fs/io/FileOutputStream: fix -WcommentMax Kellermann
2018-10-31fs/io/FileOutputStream: don't use O_TMPFILE on AndroidMax Kellermann
Fixes writing to Context.getCacheDir().
2018-10-31fs/io/FileOutputStream: add macro HAVE_O_TMPFILEMax Kellermann
2018-10-31fs/StandardDirectory: move USE_XDG to XDG.hxxMax Kellermann
2018-10-14build with Meson instead of autotoolsMax 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-03fs/io/FileOutputStream: disallow copyingMax Kellermann
2018-08-21fs/io/FileOutputStream: make linkat() mandatory on LinuxMax Kellermann
2018-08-21fs/io/FileOutputStream: add "noexcept"Max Kellermann
2018-08-21fs/io/BufferedReader: add "noexcept" to constructorMax Kellermann
2018-08-21system/Open: new UniqueFileDescriptor constructing libraryMax Kellermann
2018-08-21fs/io/FileReader: use class UniqueFileDescriptorMax Kellermann
2018-08-21fs/io/FileReader: use std::exchange()Max Kellermann
2018-08-21fs/io/FileReader: add "noexcept"Max Kellermann
2018-08-21fs/io/FileReader: simplify includesMax Kellermann
2018-08-20Compiler.h: move to util/Max Kellermann
2018-07-19fs/io/OutputStream: relicense under BSD-2Max Kellermann
2018-07-18fs/List: new library exporting ListWildcard()Max Kellermann
2018-07-18fs/Path: add method ToUTF8Throw()Max Kellermann
2018-07-18fs/AllocatedPath: divert some methods to class PathMax Kellermann
Eliminate duplicate code.
2018-07-18fs/CheckFile: remove variable path_utf8Max Kellermann
2018-07-18fs/Traits: add Apply()Max Kellermann
2018-07-18fs/{,Allocated}Path: add typedef TraitsMax Kellermann
2018-07-17fs/Config: use struct ConfigDataMax Kellermann
2018-07-17fs/Path: add operator/(Path,Path)Max Kellermann
Modeled after std::filesystem::operator/() from C++17.
2018-07-16config/Config*: rename files, drop "Config" prefixMax Kellermann
2018-01-24util/StringFormat: new utility libraryMax Kellermann
2018-01-17fs/AllocatedPath: make the nullptr_t constructor publicMax Kellermann
2018-01-17fs/Path: replace method Null() with nullptr_t constructorMax Kellermann
2017-12-27fs/AllocatedPath: drop obsolete GCC checkMax Kellermann
2017-12-19Main, ...: catch any exception, not just std::runtime_errorMax Kellermann
2017-12-16Merge 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-10util/{Const,Writable}Buffer, ...: rename IsEmpty() to empty(), imitating STLMax Kellermann
2017-08-10fs/FileSystem: use UniqueFileDescriptor in TruncateFile()Max Kellermann
2017-08-10fs/FileSystem: OpenFile() returns UniqueFileDescriptorMax Kellermann
2017-07-05util/StringUtil: move strip functions to StringStrip.cxxMax Kellermann
2017-06-04Merge tag 'v0.20.9'Max Kellermann
release v0.20.9
2017-06-04*: add lost of "noexcept" specificationsMax Kellermann
2017-05-15Merge tag 'v0.20.7'Max Kellermann
release v0.20.7
2017-05-08*: remove "pure" and "const" attributes from throwing functionsMax 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 prototypesMax Kellermann
This eliminates some overhead, because the compiler doesn't need to consider these functions throwing.
2017-02-24fs/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-10fs/FileInfo: use std::chrono::system_clockMax Kellermann