aboutsummaryrefslogtreecommitdiffstats
path: root/src/input (unfollow)
Commit message (Collapse)AuthorFilesLines
2014-11-25event/DeferredMonitor: include cleanupMax Kellermann1-0/+2
2014-11-10input/curl: ignore ResponseBoundary() while seekingMax Kellermann1-0/+4
While seeking, metadata must not be updated. ResponseBoundary() was added in MPD 0.19.1, but I forgot to add the IsSeeking() check there. This caused the "seekable" flag to reset.
2014-11-07input/AsyncInputStream: set Error when seeking unseekableMax Kellermann1-1/+4
Fixes crash in the "audiofile" decoder while logging the seek error.
2014-11-07input/Open: expose input_domainMax Kellermann3-2/+52
2014-11-02input/curl: forget Content-Length (and more) after redirectMax Kellermann1-0/+26
Fixes playback of redirected streams.
2014-11-02AsyncInputStream: add method ClearTag()Max Kellermann1-0/+4
2014-11-02InputStream: add method ClearMimeType()Max Kellermann1-0/+4
2014-11-02input/curl: fix curl_easy_setopt() parameter typesMax Kellermann1-4/+4
2014-11-01input/curl: fix curl_easy_setopt() parameter typesMax Kellermann1-3/+3
2014-10-28TextInputStream: don't ignore unterminated last lineMax Kellermann1-4/+16
2014-10-19TextInputStream: manually shift the buffer before readingMax Kellermann1-0/+2
Fixes truncated lines in m3u and cue files (regression by commit 67958f7).
2014-10-11ThreadInputStream: call ThreadRead() inside the thread instead of Read()Max Kellermann1-1/+1
Fixes deadlock bug in the "mms" plugin.
2014-10-11ThreadInputStream: add assertionsMax Kellermann1-0/+8
2014-10-02input/Open: use OpenLocalInputStream()Max Kellermann4-30/+33
Make the "open" method of plugins "file" and "archive" dummy methods that always fail. Instead, let InputStream::Open() hard-code access to these two plugins by using OpenLocalInputStream(). This allows simplifyin the algorithm for falling back to probing archive plugins.
2014-10-02input/LocalOpen: new library for opening local filesMax Kellermann2-0/+86
Combines the "file" and the "archive" input plugins.
2014-10-02input/archive: export function OpenArchiveInputStream()Max Kellermann2-16/+33
2014-10-02input/file: export function OpenFileInputStream()Max Kellermann2-13/+37
2014-10-02input/file: generate Error when errno==ENOENTMax Kellermann1-1/+1
This special case was useless. Fixes the dreaded "Unrecognized URI" error message when a file does not exist.
2014-10-02input/file: make the "fd" attribute "const"Max Kellermann1-1/+1
2014-10-02input/file: make variables more localMax Kellermann1-6/+3
2014-10-02input/file: convert to classMax Kellermann1-1/+2
2014-09-16CurlInputPlugin: fix crash after second init callThomas Guillem1-0/+1
The second time init was called, http_200_aliases pointed to a freed pointer and leaded to a SEGFAULT.
2014-09-02input/nfs: auto-reconnect if failed while pausedMax Kellermann1-1/+46
2014-09-02input/async: add method IsPaused()Max Kellermann1-0/+4
2014-08-31input/nfs: notify client on errorMax Kellermann1-0/+2
Fixes hanging NFS client.
2014-08-30*: add missing Compiler.h includesMax Kellermann1-0/+1
Necessary for "final" on gcc 4.6.
2014-08-19InputStream: move typedef offset_type to Offset.hxxMax Kellermann2-1/+34
Reduce header dependencies.
2014-08-19InputStream: CheapSeeking() returns false only for HTTPMax Kellermann1-2/+3
Seeking on NFS or SMB is cheap. Actually, only HTTP streams are expensive to seek. This enables a few features on NFS/SMB files, for example Ogg tags.
2014-08-19InputStream: move code to ExpensiveSeeking()Max Kellermann1-1/+13
2014-08-19InputStream: make offset_type unsignedMax Kellermann4-11/+5
2014-08-19InputPlugin: remove typedef offset_typeMax Kellermann1-2/+0
Has been moved to class InputStream long ago.
2014-08-19InputStream: allow GetSize() only if KnownSize()Max Kellermann1-0/+1
2014-08-19InputStream: add constant UNKNOWN_SIZEMax Kellermann2-4/+6
2014-08-19input/proxy: use KnownSize()Max Kellermann1-1/+4
2014-08-19InputStream: use KnownSize() in assertionMax Kellermann1-1/+1
2014-08-18input/ffmpeg: use av_strerror()Max Kellermann1-4/+4
Generate more detailed error messages.
2014-08-18{input,decoder}/ffmpeg: move ffmpeg_domain to lib/ffmpeg/Domain.cxxMax Kellermann1-3/+1
Eliminate duplicate definition (in input plugin and decoder plugin).
2014-08-18input/ffmpeg: update offset after seekingMax Kellermann1-0/+1
2014-08-18input/ffmpeg: refactor error code pathMax Kellermann1-4/+4
2014-08-18input/ffmpeg: use "auto"Max Kellermann1-10/+10
2014-08-07input/TextInputStream: move ReadBufferedLine() to util/TextFile.hxxMax Kellermann2-22/+3
2014-08-07TextInputStream: don't stripMax Kellermann1-3/+3
Let the caller decide whether to strip. Only remove \n and \r (end-of-line markers).
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 Kellermann2-10/+6
2014-08-07util/CharUtil: add IsWhitespaceFast()Max Kellermann1-1/+1
2014-08-07input/TextInputStream: return char*Max Kellermann2-18/+15
Revert to the old API before commit e9e55b08, removing unnecessary bloat.
2014-08-06util/FifoBuffer: rename to StaticFifoBufferMax Kellermann1-2/+2
2014-07-11input/curl: options "verify_peer" and "verify_host"Max Kellermann1-0/+8
2014-07-10input/async: more API documentationMax Kellermann1-0/+26
2014-06-21input/async: use IsEOF() instead of !open for "ready" checkMax Kellermann1-2/+3
Checking "!open" did not work with the NFS plugin because that plugin does not close the file automatically, unlike CURL.