Max Kellermann
|
329c3ab21b
|
fs/FileInfo: use std::chrono::system_clock
|
2017-02-10 23:48:21 +01:00 |
|
Max Kellermann
|
f689e28958
|
SongLoader: return instance, not pointer
|
2017-02-08 10:02:08 +01:00 |
|
Max Kellermann
|
dcbab8e37a
|
PlaylistFile: "playlistadd" creates new playlist if it does not exist, as documented
|
2017-01-16 20:55:19 +01:00 |
|
Max Kellermann
|
5900253b85
|
update copyright year
|
2017-01-03 20:48:59 +01:00 |
|
Max Kellermann
|
65974ceabc
|
PlaylistFile: remove redundant existence check
|
2016-12-04 20:04:16 +01:00 |
|
Max Kellermann
|
6caf53d1c2
|
fs/FileSystem: RenameFile() throws exception on error
|
2016-12-04 19:59:33 +01:00 |
|
Max Kellermann
|
6961bd61ca
|
LocateUri: migrate from class Error to C++ exceptions
|
2016-10-27 22:04:41 +02:00 |
|
Max Kellermann
|
d775f13a03
|
fs/io/FileOutputStream: merge all classes into one, add enum Mode
Prepare to add more modes.
|
2016-09-04 12:57:41 +02:00 |
|
Max Kellermann
|
ea0e6d9824
|
fs/FileSystem: RemoveFile() throws exception on error
|
2016-08-15 22:25:15 +02:00 |
|
Max Kellermann
|
b6b8fb7d73
|
PlaylistFile: use TruncateFile()
As a side effect, "playlistclear" no longer creates a new playlist if
the given one doesn't yet exist.
|
2016-08-15 22:19:55 +02:00 |
|
Max Kellermann
|
a0eb6d0976
|
PlaylistFile: use the new AllocatedPath::FromFS() range overload
|
2016-04-21 14:22:59 +02:00 |
|
Max Kellermann
|
1aee89f5ea
|
*: include cleanup (using iwyu)
|
2016-03-01 22:08:13 +01:00 |
|
Max Kellermann
|
1d67aa7bf2
|
update copyright year to 2016
|
2016-02-26 17:54:05 +01:00 |
|
Max Kellermann
|
f3503e0026
|
fs/DirectoryReader: use C++ exceptions instead of class Error
|
2015-12-29 12:56:26 +01:00 |
|
Max Kellermann
|
37862f0f20
|
PlaylistFile: convert more APIs from Error to std::exception
|
2015-12-28 14:20:37 +01:00 |
|
Max Kellermann
|
1f184f4aec
|
PlaylistFile: throw exception on spl_map_to_fs() failure
|
2015-12-28 14:20:37 +01:00 |
|
Max Kellermann
|
db5a691693
|
PlaylistFile: remove obsolete function TranslatePlaylistError()
|
2015-12-28 14:20:37 +01:00 |
|
Max Kellermann
|
fe0b6a1117
|
PlaylistFile: convert system_error::ENOENT to PlaylistResult::NO_SUCH_LIST
|
2015-12-28 06:44:01 +01:00 |
|
Max Kellermann
|
e6e7d6dbd6
|
fs/io/Reader: use C++ exceptions instead of class Error
|
2015-12-18 01:08:16 +01:00 |
|
Max Kellermann
|
e4a06da14e
|
fs/io/OutputStream: use C++ exceptions in Write()
|
2015-12-16 10:24:43 +01:00 |
|
Max Kellermann
|
7eae3bc8c5
|
fs/io/FileOutputStream: use C++ exceptions in Commit()
|
2015-12-16 00:33:33 +01:00 |
|
Max Kellermann
|
24b2198668
|
fs/io/FileOutputStream: use C++ exceptions in constructor
|
2015-12-16 00:33:30 +01:00 |
|
Max Kellermann
|
c880099deb
|
util/StringCompare: add StringIsEmpty()
|
2015-11-06 09:37:07 +01:00 |
|
Max Kellermann
|
733989a284
|
util/StringUtil: move comparison functions to StringCompare.cxx
|
2015-11-06 09:20:18 +01:00 |
|
Max Kellermann
|
69ad5671ed
|
Playlist*: use the BufferedOutputStream API instead of FILE*
|
2015-03-24 22:03:20 +01:00 |
|
Max Kellermann
|
98f3135ad3
|
PlaylistFile: export spl_map_to_fs() and TranslatePlaylistError()
|
2015-03-24 22:03:17 +01:00 |
|
Max Kellermann
|
8c9c3a91e6
|
PlaylistFile: eliminate redundant spl_map() calls
|
2015-03-24 22:03:17 +01:00 |
|
Max Kellermann
|
65ff72cdf8
|
fs/Traits: enable _UNICODE on Windows
Use wchar_t for everything on Windows. Solves a lot of filesystem
charset problems.
|
2015-03-05 10:15:10 +01:00 |
|
Max Kellermann
|
39c9669445
|
fs/Traits: add macro PATH_LITERAL()
|
2015-03-05 08:58:04 +01:00 |
|
Max Kellermann
|
59dd8ffbc6
|
PlaylistFile: use Path::ToUTF8() instead of PathToUTF8()
|
2015-03-05 08:37:00 +01:00 |
|
Max Kellermann
|
8f9fe1b11a
|
PlaylistFile: don't insert "file://" before absolute paths
This prefix is deprecated.
|
2015-03-05 08:36:17 +01:00 |
|
Max Kellermann
|
820debf45a
|
util/StringUtil: add FindStringSuffix()
|
2015-03-03 11:29:31 +01:00 |
|
Max Kellermann
|
4ee81e6a3d
|
PlaylistFile: limit variable scope
|
2015-03-02 22:19:47 +01:00 |
|
Max Kellermann
|
87a8a3e22f
|
PlaylistFile: move memchr() call to class Path
|
2015-03-02 21:48:37 +01:00 |
|
Max Kellermann
|
e9125ef8e4
|
PlaylistFile: use PathTraitsFS typedefs
|
2015-03-02 21:47:33 +01:00 |
|
Max Kellermann
|
44b9197354
|
Mapper: use class Path
|
2015-02-28 23:00:27 +01:00 |
|
Max Kellermann
|
90a61b6bab
|
fs/FileInfo: new library providing GetFileInfo()
Replaces StatFile(), with a portable data object.
|
2015-02-28 23:00:26 +01:00 |
|
Max Kellermann
|
1c3f5517fa
|
config/Option: convert to strictly-typed enum
|
2015-01-21 23:30:00 +01:00 |
|
Max Kellermann
|
712ed555e6
|
Copyright year 2015
|
2015-01-01 19:48:13 +01:00 |
|
Max Kellermann
|
7350144ab3
|
PlaylistFile: don't allow empty playlist name
|
2014-10-31 14:59:27 +01:00 |
|
Max Kellermann
|
aa2e4d92e0
|
fs/io/BufferedReader: new class to replace class TextFile
The new class is pluggable, to prepare for gzipped database files.
For now, the TextFile class remains, and will be refactored away
later.
|
2014-08-07 19:38:25 +02:00 |
|
Max Kellermann
|
aafff8fd5c
|
fs/output, fs/TextFile: move to fs/io/
|
2014-08-07 19:38:25 +02:00 |
|
Max Kellermann
|
2b21312b36
|
util/StringUtil: add StringEndsWith()
Replaces g_str_has_suffix().
|
2014-02-18 09:18:42 +01:00 |
|
Max Kellermann
|
b9c248e7e7
|
PlaylistFile: use class SongLoader
|
2014-02-03 23:50:19 +01:00 |
|
Max Kellermann
|
d533b59ee3
|
PlaylistFile: switch spl_append_uri() arguments
Playlist file name first, to be consistent with the other functions in
this library.
|
2014-02-03 23:33:25 +01:00 |
|
Max Kellermann
|
6207a3f999
|
PlaylistFile: narrow LoadPlaylistFileInfo() API to accept Path
|
2014-01-30 22:17:35 +01:00 |
|
Max Kellermann
|
4465e2c46b
|
db: add compile-time option to disable database
|
2014-01-30 20:39:40 +01:00 |
|
Max Kellermann
|
f548a966f5
|
Playlist{Info,Vector}: move to db/
|
2014-01-27 11:05:21 +01:00 |
|
Max Kellermann
|
9d34fc394c
|
Database*: move to db/
|
2014-01-24 16:38:44 +01:00 |
|
Max Kellermann
|
197b503f3e
|
Config*: move to config/
|
2014-01-24 00:20:01 +01:00 |
|