Commit Graph

401 Commits

Author SHA1 Message Date
Max Kellermann 07b93dcf80 InputStream: make Seek() always absolute
Remove the "whence" parameter that is not actually necessary, and only
complicates the InputStream implementations.
2014-05-22 13:52:00 +02:00
Max Kellermann 49695d47d3 input/curl: relock mutex in error paths 2014-05-21 19:00:47 +02:00
Max Kellermann 5cec477131 input/curl: pass remaining size to CircularBuffer::Append() 2014-05-21 18:59:51 +02:00
Max Kellermann a5d0300787 input/curl: move code to IcyInputStream 2014-05-21 18:47:49 +02:00
Max Kellermann 09b84c51ee input/rewind: move code to class ProxyInputStream 2014-05-21 18:47:49 +02:00
Max Kellermann c42e412c0a input/InputStream: move Open() to Open.cxx
Allow compiling test programs with only selected plugins.
2014-05-21 18:47:32 +02:00
Max Kellermann 542e7feba8 input/rewind: include cleanup 2014-05-21 18:47:22 +02:00
Max Kellermann dc085e0bd2 input/rewind: work around assertion failure
Caused by commit 0b4fa41a
2014-05-21 18:47:12 +02:00
Max Kellermann 7c9517343c ThreadInputStream: include cleanup 2014-05-12 19:04:32 +02:00
Max Kellermann 0b4fa41aff InputStream: "protect" attributes 2014-05-12 18:59:46 +02:00
Max Kellermann e138e2c880 input/cdio: convert to class 2014-05-12 18:59:25 +02:00
Max Kellermann 0d6345e98b input/cdio: move initialization code to constructor
Make attributes const, don't allow partial initialization.
Instantiate the CdioParanoiaInputStream object at the end of
input_cdio_open().
2014-05-12 18:54:05 +02:00
Max Kellermann a84bcf597d input/cdio: handle cdio_open() failure 2014-05-12 18:53:47 +02:00
Max Kellermann 4bbd4ba855 input/cdio: initialize lsn_relofs in constructor 2014-05-12 18:48:16 +02:00
Max Kellermann 9e5b56b475 input/cdio: initialize attribute "buffer_lsn" 2014-05-12 18:47:27 +02:00
Max Kellermann dd383037fd input/cdio: remove unused attribute "trackno" 2014-05-12 18:41:45 +02:00
Max Kellermann fd1b04932a InputStream: remove attribute "plugin" 2014-05-11 18:25:55 +02:00
Max Kellermann d4b625b48e InputStream: make various methods abstract
Replace InputPlugin attributes.
2014-05-11 17:14:49 +02:00
Max Kellermann 82337dec44 InputStream: add virtual destructor
Replaces the method Close().
2014-05-11 17:12:50 +02:00
Max Kellermann f1d0700252 input/plugins: make InputStream the base class
Prepare for adding virtual methods.
2014-05-11 17:12:50 +02:00
Max Kellermann e1383a2d8e input/rewind: convert to class 2014-05-11 17:12:50 +02:00
Max Kellermann 6773adc771 InputStream: convert to class 2014-05-11 15:34:48 +02:00
Max Kellermann 7ecf4ad54d input/nfs: add missing string.h include
For strrchr().  Fixes build failure.
2014-04-23 12:53:19 +02:00
Max Kellermann 707d379b97 input/mms: move blocking I/O to thread 2014-03-16 11:48:46 +01:00
Max Kellermann 88a0a48b03 input/BufferedInputStream: new wrapper for moving plugin to thread 2014-03-16 10:26:40 +01:00
Max Kellermann e9912bcf8a input/alsa: don't initialize "seekable=false", "size=-1"
These are the default values already.
2014-03-16 09:52:17 +01:00
Max Kellermann c7e2f558a0 input/curl: use CircularBuffer
Replaces its own weird buffering code.
2014-03-16 00:35:28 +01:00
Max Kellermann 8f74bf314d input/curl: add method CurlInputStream::Open() 2014-03-15 22:56:05 +01:00
Max Kellermann 0dd5ebbdbe input/curl: move _seek() into the CurlInputStream class 2014-03-15 22:42:37 +01:00
Max Kellermann 2ae60767a3 input/curl: move _easy_init() into the CurlInputStream class 2014-03-15 22:38:46 +01:00
Max Kellermann 64f31f70f9 input/curl: pass std::string&& to HeaderReceived()
Code simplification.
2014-03-15 22:02:59 +01:00
Max Kellermann 23eacbd132 input/curl: move code to CurlInputStream methods 2014-03-15 20:43:37 +01:00
Max Kellermann e9f16fca96 input/curl: rename "error" to "error_buffer" 2014-03-15 20:43:17 +01:00
Max Kellermann 3d30de91f3 input/curl: rename struct input_curl to CurlInputStream 2014-03-15 20:38:08 +01:00
Max Kellermann 2bf2f34b12 InputPlugin: allow init() to soft-fail
Add enum InputResult which is a tri-state.  Input plugins may now fail
and just become unavailable.
2014-03-02 00:17:32 +01:00
Max Kellermann 4ba7427fa0 util/{Const,Writable}Buffer: add operator[] 2014-03-01 07:49:13 +01:00
Max Kellermann 7757e59e78 input/curl: include cleanup 2014-02-22 00:18:29 +01:00
Max Kellermann d761d8b168 input/nfs: move nfs_domain to lib/nfs/Domain.cxx 2014-02-08 14:24:47 +01:00
Max Kellermann fe7c6fee34 ArchivePlugin: pass Path to open() 2014-02-08 13:25:44 +01:00
Max Kellermann 9906daeca7 ArchivePlugin: rename struct archive_plugin to ArchivePlugin 2014-02-08 13:22:13 +01:00
Max Kellermann c8f0c7e9ed */smbclient: protect all libsmbclient calls with a mutex
libsmbclient is not thread-safe nor reentrant.  We must protect all
function calls with a global mutex, unfortunately.
2014-02-06 22:19:59 +01:00
Max Kellermann e4322a716c input/nfs: new plugin using libnfs 2014-02-06 18:37:27 +01:00
Max Kellermann 86ca5b3f16 input/smbclient: move code to lib/smbclient/Init.cxx 2014-01-25 23:29:42 +01:00
Max Kellermann 9b1fbdbca6 ConfigGlobal: add config_find_block()
Merge duplicate code.
2014-01-24 16:55:17 +01:00
Max Kellermann 97391fd4b9 DespotifyUtils, Expat: move to lib/ 2014-01-24 16:44:36 +01:00
Max Kellermann f8bfea8bae Input*: move to input/ 2014-01-24 16:33:33 +01:00
Max Kellermann 197b503f3e Config*: move to config/ 2014-01-24 00:20:01 +01:00
Max Kellermann 4aa6d39fd8 archive/*: move to archive/plugins/ 2014-01-24 00:09:37 +01:00
Max Kellermann 77041e2cd2 input/alsa: fix memory leak
Don't duplicate the MIME type when it gets passed to a std::string.
2014-01-14 22:38:30 +01:00
Max Kellermann 049abef2d4 input/despotify: change name to "despotify"
The name "spt" didn't make much sense for this plugin.
2014-01-13 22:35:30 +01:00