aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-08-11fs/io/TextFile: use AutoGunzipReaderMax Kellermann2-1/+23
Several MPD subsystems can now read gzipped files; for example, the database file can be gzipped.
2014-08-11fs/io/AutoGunzipReader: new classMax Kellermann2-0/+121
2014-08-11fs/io/PeekReader: new utility classMax Kellermann2-0/+112
2014-08-11fs/io/GzipOutputStream,GunzipReader: move zlib_domain to src/lib/zlib/Domain.cxxMax Kellermann6-8/+53
2014-08-11util/CharUtil: add ToLowerASCII()Max Kellermann1-0/+13
2014-08-08decoder/Mp4v2: fix crash with undefined errorAndrée Ekroth1-6/+4
When no track is found the error is now properly set. Previously the calling function tried to log an undefined error, which resulted in a crash. MPD falls back to ffmpeg for unsupported tracks, such as ALAC. This should fix issue 4051.
2014-08-08input/GunzipInputStream: new classMax Kellermann2-0/+171
2014-08-07decoder/Mp4v2: add MP4v2 decoder pluginAndrée Ekroth3-0/+355
This plugin uses the MP4v2 library to play mp4/m4a files. It is limited to file_decode.
2014-08-07fs/io/BufferedReader: new class to replace class TextFileMax Kellermann8-68/+209
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-07fs/io/Reader: new interfaceMax Kellermann3-0/+216
2014-08-07fs/output, fs/TextFile: move to fs/io/Max Kellermann23-23/+23
2014-08-07input/TextInputStream: move ReadBufferedLine() to util/TextFile.hxxMax Kellermann3-22/+55
2014-08-07util/DynamicFifoBuffer: make GetCapacity() and Clear() publicMax Kellermann1-1/+2
2014-08-07fs/output/FileOutputStream: use open_cloexec()Max Kellermann1-3/+4
Support operating systems that don't have O_CLOEXEC.
2014-08-07TextInputStream: don't stripMax Kellermann3-6/+8
Let the caller decide whether to strip. Only remove \n and \r (end-of-line markers).
2014-08-07util/{Static,Foreign}FifoBuffer: lazy shiftMax Kellermann2-2/+10
Reduce the number of unnecessary memmove() calls.
2014-08-07util/StaticFifoBuffer: fix indentMax Kellermann1-68/+68
2014-08-07TextInputStream: move code to ReadBufferedLine()Max Kellermann2-34/+45
Look at the buffer first, before trying to read from the file. This reduces overhead because we don't refill the buffer after every line.
2014-08-07util/StringUtil: add StripRight() overload with "end" argumentMax Kellermann6-18/+50
2014-08-07LogBackend: use StripRight()Max Kellermann1-6/+2
Eliminate duplicate code.
2014-08-07util/StringUtil: use IsWhitespaceOrNull() in StripRight()Max Kellermann1-1/+1
The null byte is whitespace, too.
2014-08-07util/StringUtil: move code to StripRight()Max Kellermann2-6/+31
2014-08-07util/StringUtil: rename strchug_fast() to StripLeft()Max Kellermann11-29/+26
2014-08-07util/CharUtil: add IsWhitespaceFast()Max Kellermann5-6/+19
2014-08-07util/CharUtil: make IsWhitespace*() "constexpr"Max Kellermann1-0/+2
2014-08-07util/CharUtil: fix indentMax Kellermann1-16/+16
2014-08-07fs/StandardDirectory: pass writable string to ParseConfigLine()Max Kellermann1-8/+10
Eliminate the std::string overhead.
2014-08-07event/BufferedSocket: fix inversed buffer checkMax Kellermann1-1/+1
This was broken by commit 84d20d9e, which deleted the "!" from the check.
2014-08-07util/ForeignFifoBuffer: add method Swap()Max Kellermann1-0/+7
2014-08-07util/ForeignFifoBuffer: add method MoveFrom()Max Kellermann1-0/+16
2014-08-07input/TextInputStream: return char*Max Kellermann5-31/+24
Revert to the old API before commit e9e55b08, removing unnecessary bloat.
2014-08-06util/ForeignFifoBuffer: add method GetAvailable()Max Kellermann2-1/+6
2014-08-06util/DynamicFifoBuffer: move code to new base class ForeignFifoBufferMax Kellermann2-119/+247
2014-08-06util/FifoBuffer: rename to StaticFifoBufferMax Kellermann3-9/+9
2014-08-06db/update/InotifySource: remove FifoBufferMax Kellermann2-16/+15
Eliminate support for partial reads. The Linux kernel will never return partial results, so this buffering was unnecessary.
2014-08-06fs/GzipOutputStream: new class wrapping zlibMax Kellermann2-0/+177
2014-07-30*Save, *State: use the OutputStream API instead of FILE*Max Kellermann21-133/+147
2014-07-30fs/OutputStream: new infrastructure for writing to filesMax Kellermann6-0/+499
2014-07-30util/Error: add method FormatLastError()Max Kellermann2-0/+32
2014-07-30util/Error: add SetLastError() overload with "DWORD code" parameterMax Kellermann2-2/+8
2014-07-30util/Error: add "printf" attributesMax Kellermann1-0/+5
2014-07-30TagId3: fix printf string parameterMax Kellermann1-1/+1
2014-07-30util/DynamicFifoBuffer: fix typo in API documentationMax Kellermann1-1/+1
2014-07-30StateFile: use nullptr instead of NULLMax Kellermann1-1/+1
2014-07-30encoder/opus: use nullptr instead of NULLMax Kellermann1-1/+1
2014-07-30system/Resolver: use nullptr instead of NULLMax Kellermann1-5/+5
2014-07-30pcm: use nullptr instead of NULLMax Kellermann2-3/+3
2014-07-30playlist/extm3u: use nullptr instead of NULLMax Kellermann1-4/+4
2014-07-30Main: don't require mpd.conf on AndroidMax Kellermann1-1/+3
Don't fail to start if mpd.conf does not exist; just use default values.
2014-07-29db/proxy: implement Update()Max Kellermann1-0/+19