summaryrefslogtreecommitdiff
path: root/src/storage/plugins/LocalStorage.cxx
AgeCommit message (Collapse)Author
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-07-18fs/Path: add method ToUTF8Throw()Max Kellermann
2018-07-17fs/Path: add operator/(Path,Path)Max Kellermann
Modeled after std::filesystem::operator/() from C++17.
2018-01-21storage/Interface: wrap StorageDirectoryReader in std::unique_ptrMax Kellermann
2018-01-17fs/AllocatedPath: make the nullptr_t constructor publicMax Kellermann
2018-01-02storage/Plugin: return std::unique_ptr<Storage>Max Kellermann
2017-12-19Main, ...: catch any exception, not just std::runtime_errorMax Kellermann
2017-12-18storage/Interface: add "noexcept"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-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-01-03update copyright yearMax Kellermann
2016-10-27storage: migrate from class Error to C++ exceptionsMax Kellermann
2016-04-12util/StringPointer: rename typedef pointer to pointer_typeMax Kellermann
2016-02-26update copyright year to 2016Max Kellermann
2015-12-29fs/DirectoryReader: use C++ exceptions instead of class ErrorMax Kellermann
2015-11-06util/StringCompare: add StringIsEmpty()Max Kellermann
2015-03-03storage/local: use PathTraitsFS typedefsMax Kellermann
2015-02-28fs/FileInfo: new library providing GetFileInfo()Max Kellermann
Replaces StatFile(), with a portable data object.
2015-02-28storage/FileInfo: rename to StorageFileInfoMax Kellermann
2015-01-01Copyright year 2015Max Kellermann
2014-10-02storage: remove redundant "virtual" keywordsMax Kellermann
"override" implies "virtual".
2014-02-07storage: add struct StoragePlugin and a plugin registryMax Kellermann
2014-02-07storage/local: remove utf8 path from constructorMax Kellermann
Build the UTF-8 version of the path automatically in the constructor.
2014-02-07StoragePlugin: add method MapToRelativeUTF8()Max Kellermann
Replaces map_to_relative_path() from Mapper.cxx.
2014-02-07storage/local: hide the class declarationsMax Kellermann
Hide inside CreateLocalStorage().
2014-02-05storage/local: OpenDirectory() returns StorageDirectoryReader*Max Kellermann
2014-02-05storage/local: move to src/storage/plugins/Max Kellermann