Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | fs/Path: reimplement GetSuffix() using GetBase() and StringFindLast() | Max Kellermann | 2015-03-05 | 1 | -1/+7 |
| | |||||
* | fs/File{System,Info}: fix regular file check | Max Kellermann | 2015-03-05 | 2 | -2/+4 |
| | | | | | | Don't use FILE_ATTRIBUTE_NORMAL, it's a "magic" value for something else. To check if a file is a regular file, we need to check if it's NOT a directory (or a device). | ||||
* | fs/Path: use the "const_pointer" typedef | Max Kellermann | 2015-03-05 | 2 | -2/+2 |
| | |||||
* | fs/Traits: use TCHAR on Windows | Max Kellermann | 2015-03-05 | 2 | -0/+21 |
| | |||||
* | fs/Traits: add macro PATH_LITERAL() | Max Kellermann | 2015-03-05 | 2 | -3/+5 |
| | |||||
* | fs/Traits: use string.h API wrappers | Max Kellermann | 2015-03-05 | 1 | -16/+6 |
| | |||||
* | fs/io/FileOutputStream: use class FileDescriptor | Max Kellermann | 2015-03-03 | 2 | -19/+20 |
| | |||||
* | input/file: use class FileReader | Max Kellermann | 2015-03-03 | 1 | -0/+6 |
| | |||||
* | fs/io/FileReader: add method GetFileInfo() | Max Kellermann | 2015-03-03 | 3 | -1/+26 |
| | |||||
* | fs/io/FileReader: add move constructor | Max Kellermann | 2015-03-03 | 1 | -0/+14 |
| | |||||
* | system/FileDescriptor: new wrapper class for a file descriptor | Max Kellermann | 2015-03-03 | 2 | -15/+12 |
| | |||||
* | fs/io/FileReader: add method Seek() | Max Kellermann | 2015-03-03 | 2 | -0/+28 |
| | |||||
* | fs/Traits: add Find() | Max Kellermann | 2015-03-03 | 2 | -1/+21 |
| | |||||
* | fs/Traits: use std::char_traits | Max Kellermann | 2015-03-03 | 1 | -4/+6 |
| | |||||
* | PlaylistFile: move memchr() call to class Path | Max Kellermann | 2015-03-02 | 1 | -0/+10 |
| | |||||
* | fs/Path: add method GetSuffix() | Max Kellermann | 2015-03-01 | 2 | -0/+10 |
| | | | | Type-safe wrapper for uri_get_suffix(). | ||||
* | fs/Path: pass Path to Relative() | Max Kellermann | 2015-02-28 | 2 | -4/+4 |
| | |||||
* | fs/AllocatedPath: use PathTraitsFS::Relative() | Max Kellermann | 2015-02-28 | 2 | -23/+3 |
| | | | | Eliminate duplicate code. | ||||
* | fs/Path: rename RelativeFS() to Relative() | Max Kellermann | 2015-02-28 | 3 | -3/+3 |
| | |||||
* | fs/Traits: add missing dereference in RelativePathImpl() | Max Kellermann | 2015-02-28 | 1 | -1/+1 |
| | |||||
* | fs/CheckFile: convert path to UTF-8 for error message | Max Kellermann | 2015-02-28 | 1 | -6/+11 |
| | |||||
* | fs/FileInfo: use GetFileAttributesEx() on WIN32 | Max Kellermann | 2015-02-28 | 1 | -1/+49 |
| | |||||
* | fs/FileSystem: remove unused WIN32 port of StatFile() | Max Kellermann | 2015-02-28 | 1 | -5/+4 |
| | |||||
* | fs/FileInfo: new library providing GetFileInfo() | Max Kellermann | 2015-02-28 | 2 | -8/+114 |
| | | | | Replaces StatFile(), with a portable data object. | ||||
* | fs/Path: make IsAbsolute() const | Max Kellermann | 2015-02-28 | 2 | -2/+2 |
| | |||||
* | fs/FileSystem: use GetFileAttributes() on WIN32 if possible | Max Kellermann | 2015-02-27 | 1 | -2/+20 |
| | |||||
* | fs/FileSystem: merge CheckAccess() into PathExists() | Max Kellermann | 2015-02-27 | 1 | -16/+6 |
| | | | | | PathExists() should better do what CheckAccess() does, and CheckAccess() doesn't do what its name implies. | ||||
* | fs/DirectoryReader: use FindFirstFile(), FindNextFile() on WIN32 | Max Kellermann | 2015-02-26 | 1 | -0/+85 |
| | |||||
* | fs/Traits: add constant CURRENT_DIRECTORY | Max Kellermann | 2015-02-25 | 3 | -2/+7 |
| | |||||
* | fs/AllocatedPath: add nullptr_t constructor | Max Kellermann | 2015-02-25 | 1 | -1/+3 |
| | |||||
* | fs/{Allocated,}Path,Charset: use PathTraitsFS typedefs | Max Kellermann | 2015-02-25 | 6 | -21/+19 |
| | |||||
* | fs/FileSystem: remove unused FOpenModes | Max Kellermann | 2015-02-25 | 1 | -20/+0 |
| | |||||
* | fs/io/File{Reader,OutputStream}: convert path to UTF-8 for error message | Max Kellermann | 2015-02-25 | 2 | -7/+18 |
| | |||||
* | fs/io/FileOutputStream: use CREATE_ALWAYS instead of TRUNCATE_EXISTING | Max Kellermann | 2015-02-10 | 1 | -1/+1 |
| | | | | | Fixes yet another breakage of creating the database+state file on Windows. | ||||
* | fs/Charset: convert #ifdef to regular "if" | Max Kellermann | 2015-02-09 | 1 | -3/+5 |
| | |||||
* | fs/Charset: change FixSeparators() API to use std::string&& | Max Kellermann | 2015-02-08 | 1 | -11/+6 |
| | |||||
* | Merge tag 'v0.19.9' | Max Kellermann | 2015-02-06 | 1 | -0/+2 |
|\ | |||||
| * | fs/io/FileOutputStream: don't auto-delete file on WIN32 | Max Kellermann | 2015-02-06 | 1 | -0/+2 |
| | | | | | | | | | | | | | | | | | | The file handle is never reset to INVALID_HANDLE_VALUE, and thus the destructor will assume the operation shall be cancelled and will delete the temporary file. This was a major breakage for saving the database file and the state file. | ||||
* | | fs/io/BufferedReader: count line numbers | Max Kellermann | 2015-01-21 | 2 | -2/+12 |
| | | | | | | | | Replaces the dirty code in config/ConfigFile.cxx. | ||||
* | | config/Option: convert to strictly-typed enum | Max Kellermann | 2015-01-21 | 1 | -1/+1 |
| | | |||||
* | | fs/io/FileOutputStream: add static method Create() | Max Kellermann | 2015-01-14 | 2 | -0/+13 |
| | | |||||
* | | fs/AllocatedPath: add operator== | Max Kellermann | 2015-01-13 | 1 | -0/+10 |
| | | |||||
* | | fs/io/FileOutputStream: use O_TMPFILE if available | Max Kellermann | 2015-01-06 | 2 | -7/+67 |
| | | | | | | | | | | | | The Linux feature allows writing new files to an invisible file, and then replace the old file. This preserves the old file if we get interrupted by some event. | ||||
* | | fs/io/File{Reader,OutputStream}: use OpenFile() | Max Kellermann | 2015-01-05 | 2 | -8/+7 |
| | | |||||
* | | Copyright year 2015 | Max Kellermann | 2015-01-01 | 42 | -42/+42 |
| | | |||||
* | | Merge branch 'v0.19.x' | Max Kellermann | 2014-12-26 | 3 | -0/+28 |
|\| | |||||
| * | fs/Traits, ...: work around -Wtautological-pointer-compare | Max Kellermann | 2014-12-26 | 1 | -0/+16 |
| | | | | | | | | New in clang 3.6. | ||||
| * | Merge branch 'v0.18.x' into v0.19.x | Max Kellermann | 2014-12-26 | 2 | -0/+12 |
| |\ | |||||
| | * | util/{ASCII,UriUtil}, ...: work around -Wtautological-pointer-compare | Max Kellermann | 2014-12-26 | 2 | -0/+12 |
| | | | | | | | | | | | | New in clang 3.6. | ||||
* | | | fs/Path: add methods GetBase() and GetDirectoryName() | Max Kellermann | 2014-12-02 | 2 | -0/+46 |
| | | |