Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | input_stream: non-blocking I/O | Max Kellermann | 2011-09-16 | 1 | -2/+5 |
| | | | | | | | | | Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins. | ||||
* | input_stream: move input_stream_init(), _deinit() to _internal.c | Max Kellermann | 2011-09-14 | 1 | -0/+1 |
| | |||||
* | copyright year 2011 | Max Kellermann | 2011-01-29 | 1 | -1/+1 |
| | |||||
* | input_stream: added attribute "uri" | Max Kellermann | 2010-01-18 | 1 | -1/+1 |
| | |||||
* | input_stream: added function input_stream_deinit() | Max Kellermann | 2010-01-18 | 1 | -0/+1 |
| | | | | All close() implementations must call this method. | ||||
* | input_stream: return allocated input_stream objects | Max Kellermann | 2010-01-01 | 1 | -15/+14 |
| | | | | | | | | Major API redesign: don't let the caller allocate the input_stream object. Let each input plugin allocate its own (derived/extended) input_stream pointer. The "data" attribute can now be removed, and all input plugins simply cast the input_stream pointer to their own structure (with an "struct input_stream base" as the first attribute). | ||||
* | Update copyright notices. | Avuton Olrich | 2009-12-31 | 1 | -1/+1 |
| | |||||
* | archive: use reference counting for archive+input | Max Kellermann | 2009-12-31 | 1 | -0/+11 |
| | | | | | | | Make the input_stream implementation hold a reference on the archive_file object. Allow the caller to "close" the archive_file object immediately, no matter if the open_stream() method has succeeded or not. | ||||
* | input/archive: don't initialize input_stream.ready | Max Kellermann | 2009-12-31 | 1 | -0/+1 |
| | | | | The archive plugin should decide this. | ||||
* | archive/zzip: added struct zzip_input_stream | Max Kellermann | 2009-12-31 | 1 | -19/+33 |
| | | | | Don't use the zzip_archive object for the input_stream. | ||||
* | archive/zzip: set input_stream.{size,offset} | Max Kellermann | 2009-12-31 | 1 | -3/+5 |
| | |||||
* | archive_plugin: use GError in the open() method | Max Kellermann | 2009-12-16 | 1 | -2/+3 |
| | |||||
* | archive_plugin: wrap method calls | Max Kellermann | 2009-12-16 | 1 | -1/+5 |
| | | | | | Make archive_file a "real" struct, extended by all plugins. Add the plugin pointer to it. Wrap all method calls in functions. | ||||
* | archive_plugin: pass const string to method open() | Max Kellermann | 2009-12-16 | 1 | -1/+1 |
| | |||||
* | archive: added a C header for each plugin | Max Kellermann | 2009-12-16 | 1 | -0/+1 |
| | | | | | Moved the archive plugin "extern" declarations into each plugin header. | ||||
* | input_stream: return errors with GError | Max Kellermann | 2009-12-15 | 1 | -6/+17 |
| | |||||
* | archive/zzip: removed the "zip_context" typedef | Max Kellermann | 2009-12-15 | 1 | -11/+11 |
| | | | | Use the raw struct name. | ||||
* | archive/zip: renamed plugin to "zzip" | Max Kellermann | 2009-12-15 | 1 | -0/+197 |
This plugin is based on libzzip. |