aboutsummaryrefslogtreecommitdiffstats
path: root/src (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-08-16PlayerThread: rename player_create() to StartPlayerThread()Max Kellermann3-3/+3
2014-08-16pcm/SoxrResampler: add missing string.h includeMax Kellermann1-0/+1
2014-08-16icu: include strings.h for strcasecmpFrançois Revol1-0/+1
Again, POSIX says strcasecmp is not in string.h.
2014-08-16util: Fix header for strcasecmpFrançois Revol1-1/+1
According to POSIX and both OSX and Linux manpages, strcasecmp comes from strings.h, not string.h. Most OSes also have them available in string.h, but we just fixed the headers on Haiku and it now only provides them in strings.h. We might want to fall back to string.h for other OSes though... cf. http://pubs.opengroup.org/onlinepubs/009695399/functions/strcasecmp.html http://linux.die.net/man/3/strcasecmp https://developer.apple.com/library/mac/documentation/Darwin/Reference/ManPages/man3/strcasecmp.3.html
2014-08-13encoder/shine: require libshine 3.1, adapt to new APIMax Kellermann1-3/+3
The "written" argument to shine_encode_buffer() and shine_flush() was changed from "long" to "int", which breaks API and ABI compatibility. This is a big deal, and it doesn't seem worthwile to keep support for the (broken) 3.0 release.
2014-08-13decoder/ffmpeg: use avcodec_descriptor_get() to determine codec nameMax Kellermann1-0/+9
In version 11, both ffmpeg and libav deprecate AVCodecContext::codec_name. The function avcodec_descriptor_get() has been introduced long ago.
2014-08-13PcmExport: add missing <iterator> includeMax Kellermann1-0/+2
For the range-based loop on a ConstBuffer object.
2014-08-12PcmDsdUsb: use class ConstBufferMax Kellermann3-18/+16
2014-08-12PcmExport: use class ConstBufferMax Kellermann4-38/+31
2014-08-12Filter: FilterPCM() returns ConstBufferMax Kellermann10-134/+90
API simplification. We can now avoid abusing a "size_t*" as additional return value.
2014-08-12PcmConvert: Convert() returns ConstBufferMax Kellermann4-17/+14
2014-08-12Filter: update API documentationMax Kellermann1-2/+2
2014-08-12MusicChunk: rename struct to MusicChunkMax Kellermann16-74/+75
2014-08-12MusicChunk: update API documentationMax Kellermann1-2/+2
2014-08-12AllCommands: close connection after syntax errorMax Kellermann1-1/+3
Stop HTTP clients from exploiting MPD via forged POST requests.
2014-08-11util/HugeAllocator: implement on WindowsMax Kellermann1-0/+22
2014-08-11db/simple: check for I/O errors in Load()Max Kellermann1-1/+1
2014-08-11fs/io/TextFile: add method Check()Max Kellermann2-0/+16
2014-08-11fs/io/Reader: add "nonnull" attributeMax Kellermann1-0/+1
2014-08-11SongFilter: new filter "modified-since"Max Kellermann2-0/+83
2014-08-11db/simple: compress the database file using gzipMax Kellermann2-5/+60
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-07event/BufferedSocket: fix inversed buffer checkMax Kellermann1-1/+1
This was broken by commit 84d20d9e, which deleted the "!" from the check.