aboutsummaryrefslogtreecommitdiffstats
path: root/src/archive/iso9660_archive_plugin.c (unfollow)
Commit message (Collapse)AuthorFilesLines
2011-09-16input_stream: non-blocking I/OMax Kellermann1-3/+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.
2011-09-14input_stream: move input_stream_init(), _deinit() to _internal.cMax Kellermann1-0/+1
2011-01-29copyright year 2011Max Kellermann1-1/+1
2010-01-18input_stream: added attribute "uri"Max Kellermann1-1/+1
2010-01-18input_stream: added function input_stream_deinit()Max Kellermann1-0/+3
All close() implementations must call this method.
2010-01-01input_stream: return allocated input_stream objectsMax Kellermann1-15/+12
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).
2009-12-31Update copyright notices.Avuton Olrich1-1/+1
2009-12-31archive: use reference counting for archive+inputMax Kellermann1-1/+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.
2009-12-31input/archive: don't initialize input_stream.readyMax Kellermann1-0/+1
The archive plugin should decide this.
2009-12-31archive/iso9660: added struct iso9660_input_streamMax Kellermann1-20/+32
Don't use the iso9660_archive_file object for the input_stream.
2009-12-31archive/iso9660: set input_stream.{size,offset}Max Kellermann1-8/+8
2009-12-16archive_plugin: use GError in the open() methodMax Kellermann1-2/+3
2009-12-16archive_plugin: wrap method callsMax Kellermann1-1/+5
Make archive_file a "real" struct, extended by all plugins. Add the plugin pointer to it. Wrap all method calls in functions.
2009-12-16archive_plugin: pass const string to method open()Max Kellermann1-1/+1
2009-12-16archive: added a C header for each pluginMax Kellermann1-0/+1
Moved the archive plugin "extern" declarations into each plugin header.
2009-12-16archive/iso: renamed plugin to "iso9660"Max Kellermann1-34/+44
Based on libiso9660.
2009-12-15input_stream: return errors with GErrorMax Kellermann1-6/+14
2009-12-15iso, zip: fixed memory leak in destructorMax Kellermann1-1/+2
Free the "context" pointer in the method archive_plugin.close().
2009-12-15archive: close archive when stream is closedMax Kellermann1-0/+2
Fixes a memory leak: the "archive" input plugin opens the archive, but never closes it. This patch moves the responsibility for doing that to archive_plugin.open_stream(). This is an slight internal API change, but it is the simplest and least intrusive fix for the memory leak.
2009-11-12include config.h in all sourcesMax Kellermann1-0/+1
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
2009-03-13all: Update copyright header.Avuton Olrich1-6/+7
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
2009-03-02input_stream: moved struct input_plugin to input_plugin.hMax Kellermann1-1/+1
Start to separate private from public input_stream API.
2009-01-30input_stream: make seek(), buffer() optionalMax Kellermann1-15/+0
Make those two methods optional to implement, and let input_stream.c provide fallbacks. The buffer() method will be removed one day, and there is now only one implementation left (input_curl.c).
2009-01-30archive: replaced setup_stream() with open_stream()Max Kellermann1-15/+8
The open_stream() method opens the input_stream. This allows the archive plugin to do its own initialization, and it also allows it to use input_stream.data. We can remove input_stream.archive now, which was unnatural to have in the first place.
2009-01-02archive: use GLib instead of utils.hMax Kellermann1-2/+1
2008-12-16archiveapi: archive plugin for ISO filesViliam Mateicka1-0/+258