aboutsummaryrefslogtreecommitdiffstats
path: root/src/input (follow)
Commit message (Collapse)AuthorAgeFilesLines
...
* | input/curl: fix curl_easy_setopt() parameter typesMax Kellermann2014-11-011-3/+3
| |
* | TextInputStream: don't ignore unterminated last lineMax Kellermann2014-10-281-4/+16
| |
* | TextInputStream: manually shift the buffer before readingMax Kellermann2014-10-191-0/+2
| | | | | | | | | | Fixes truncated lines in m3u and cue files (regression by commit 67958f7).
* | ThreadInputStream: call ThreadRead() inside the thread instead of Read()Max Kellermann2014-10-111-1/+1
| | | | | | | | Fixes deadlock bug in the "mms" plugin.
* | ThreadInputStream: add assertionsMax Kellermann2014-10-111-0/+8
| |
* | input/Open: use OpenLocalInputStream()Max Kellermann2014-10-024-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.
* | input/LocalOpen: new library for opening local filesMax Kellermann2014-10-022-0/+86
| | | | | | | | Combines the "file" and the "archive" input plugins.
* | input/archive: export function OpenArchiveInputStream()Max Kellermann2014-10-022-16/+33
| |
* | input/file: export function OpenFileInputStream()Max Kellermann2014-10-022-13/+37
| |
* | input/file: generate Error when errno==ENOENTMax Kellermann2014-10-021-1/+1
| | | | | | | | | | This special case was useless. Fixes the dreaded "Unrecognized URI" error message when a file does not exist.
* | input/file: make the "fd" attribute "const"Max Kellermann2014-10-021-1/+1
| |
* | input/file: make variables more localMax Kellermann2014-10-021-6/+3
| |
* | input/file: convert to classMax Kellermann2014-10-021-1/+2
| |
* | CurlInputPlugin: fix crash after second init callThomas Guillem2014-09-161-0/+1
| | | | | | | | | | The second time init was called, http_200_aliases pointed to a freed pointer and leaded to a SEGFAULT.
* | input/nfs: auto-reconnect if failed while pausedMax Kellermann2014-09-021-1/+46
| |
* | input/async: add method IsPaused()Max Kellermann2014-09-021-0/+4
| |
* | input/nfs: notify client on errorMax Kellermann2014-08-311-0/+2
| | | | | | | | Fixes hanging NFS client.
* | *: add missing Compiler.h includesMax Kellermann2014-08-301-0/+1
| | | | | | | | Necessary for "final" on gcc 4.6.
* | InputStream: move typedef offset_type to Offset.hxxMax Kellermann2014-08-192-1/+34
| | | | | | | | Reduce header dependencies.
* | InputStream: CheapSeeking() returns false only for HTTPMax Kellermann2014-08-191-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.
* | InputStream: move code to ExpensiveSeeking()Max Kellermann2014-08-191-1/+13
| |
* | InputStream: make offset_type unsignedMax Kellermann2014-08-194-11/+5
| |
* | InputPlugin: remove typedef offset_typeMax Kellermann2014-08-191-2/+0
| | | | | | | | Has been moved to class InputStream long ago.
* | InputStream: allow GetSize() only if KnownSize()Max Kellermann2014-08-191-0/+1
| |
* | InputStream: add constant UNKNOWN_SIZEMax Kellermann2014-08-192-4/+6
| |
* | input/proxy: use KnownSize()Max Kellermann2014-08-191-1/+4
| |
* | InputStream: use KnownSize() in assertionMax Kellermann2014-08-191-1/+1
| |
* | input/ffmpeg: use av_strerror()Max Kellermann2014-08-181-4/+4
| | | | | | | | Generate more detailed error messages.
* | {input,decoder}/ffmpeg: move ffmpeg_domain to lib/ffmpeg/Domain.cxxMax Kellermann2014-08-181-3/+1
| | | | | | | | Eliminate duplicate definition (in input plugin and decoder plugin).
* | input/ffmpeg: update offset after seekingMax Kellermann2014-08-181-0/+1
| |
* | input/ffmpeg: refactor error code pathMax Kellermann2014-08-181-4/+4
| |
* | input/ffmpeg: use "auto"Max Kellermann2014-08-181-10/+10
| |
* | input/TextInputStream: move ReadBufferedLine() to util/TextFile.hxxMax Kellermann2014-08-072-22/+3
| |
* | TextInputStream: don't stripMax Kellermann2014-08-071-3/+3
| | | | | | | | | | Let the caller decide whether to strip. Only remove \n and \r (end-of-line markers).
* | TextInputStream: move code to ReadBufferedLine()Max Kellermann2014-08-072-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.
* | util/StringUtil: add StripRight() overload with "end" argumentMax Kellermann2014-08-072-10/+6
| |
* | util/CharUtil: add IsWhitespaceFast()Max Kellermann2014-08-071-1/+1
| |
* | input/TextInputStream: return char*Max Kellermann2014-08-072-18/+15
| | | | | | | | | | Revert to the old API before commit e9e55b08, removing unnecessary bloat.
* | util/FifoBuffer: rename to StaticFifoBufferMax Kellermann2014-08-061-2/+2
| |
* | input/curl: options "verify_peer" and "verify_host"Max Kellermann2014-07-111-0/+8
| |
* | input/async: more API documentationMax Kellermann2014-07-101-0/+26
| |
* | input/async: use IsEOF() instead of !open for "ready" checkMax Kellermann2014-06-211-2/+3
| | | | | | | | | | Checking "!open" did not work with the NFS plugin because that plugin does not close the file automatically, unlike CURL.
* | Revert "AsyncInputStream: fix assertion failure in AppendToBuffer()"Max Kellermann2014-06-211-6/+4
| | | | | | | | | | | | | | This reverts commit 966c4244cbe0de174df1e72e917078269ec9dbb9. The commit was bad, because the bug was really in NfsInputStream::DoRead(); see previous commit.
* | input/nfs: never read more than space available in bufferMax Kellermann2014-06-211-2/+4
| | | | | | | | Avoids off-by-one bug and obsoletes the bug fix in commit 966c4244
* | input/nfs: use the asynchronous libnfs APIMax Kellermann2014-06-171-84/+138
| | | | | | | | More robust and cancellable.
* | AsyncInputStream: fix assertion failure in AppendToBuffer()Max Kellermann2014-06-171-4/+6
| |
* | AsyncInputStream: reset "paused" when seekingMax Kellermann2014-06-171-0/+1
| | | | | | | | May cause assertion failure.
* | input/curl: hold mutex while writing to postponed_errorMax Kellermann2014-06-173-3/+16
| |
* | input/AsyncInputStream: add method IsBufferFull()Max Kellermann2014-06-171-0/+4
| |
* | input/async: add offset/size comparison to IsEOF()Max Kellermann2014-05-241-1/+2
| |