- 04 Jan, 2012 2 commits
-
-
Max Kellermann authored
URLContext is deprecated.
-
Max Kellermann authored
Support ancient ffmpeg versions.
-
- 16 Sep, 2011 1 commit
-
-
Max Kellermann authored
-
- 15 Sep, 2011 1 commit
-
-
Max Kellermann authored
Reduce heap usage by reducing the number of malloc() / free() calls.
-
- 26 Aug, 2011 1 commit
-
-
Max Kellermann authored
Be sure to stop the operation at some point when the server isn't responding.
-
- 23 Aug, 2011 1 commit
-
-
Max Kellermann authored
-
- 08 Nov, 2010 1 commit
-
-
Max Kellermann authored
The assertion added in MPD 0.15.14 was too much, it failed when the MIME type of a stream was NULL.
-
- 05 Nov, 2010 3 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Duplicate the "mime" attribute of the inner input_stream object, instead of copying the pointer.
-
- 28 Sep, 2010 1 commit
-
-
Thomas Jansen authored
-
- 23 Sep, 2010 1 commit
-
-
Thomas Jansen authored
The assumption that MIME type is set only once is not valid with CURL, as URL redirections may update the MIME type. This fixes bug #3044.
-
- 07 Sep, 2010 1 commit
-
-
Max Kellermann authored
According to the CURL web site, curl_multi_timeout() was added in version 7.15.4: http://curl.haxx.se/libcurl/c/curl_multi_timeout.html
-
- 20 Jul, 2010 2 commits
-
-
Max Kellermann authored
Some users reported that MPD crashes when using a new CURL version with the threaded DNS resolver enabled. It seems that curl_multi_fdset() returns no file descriptor when the DNS resolver runs in another thread, so MPD does not have any event to wait for. On the CURL mailing list, somebody suggested to sleep for a fixed amount of time. This is not an elegant solution, because daemons should never have to sleep without waiting for an event. I hope the CURL developers will review the API and remove the threaded DNS resolver. Meanwhile, I'm removing the assertion in question, to allow those unfortunate users running the latest CURL version to continue using MPD.
-
Max Kellermann authored
Use curl_multi_timeout() to determine the select() timeout, instead of hard-coding one second.
-
- 20 May, 2010 1 commit
-
-
Max Kellermann authored
Windows compatibility.
-
- 18 May, 2010 4 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
input_stream_buffer() has a check for "buffer==NULL", so we don't need an explicit empty implementation.
-
Max Kellermann authored
-
Max Kellermann authored
-
- 18 Jan, 2010 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
All close() implementations must call this method.
-
- 04 Jan, 2010 1 commit
-
-
Max Kellermann authored
Don't limit the "rewind" input plugin to CURL streams.
-
- 01 Jan, 2010 2 commits
-
-
Max Kellermann authored
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).
-
Avuton Olrich authored
-
- 31 Dec, 2009 2 commits
-
-
Max Kellermann authored
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.
-
Max Kellermann authored
The archive plugin should decide this.
-
- 30 Dec, 2009 1 commit
-
-
Max Kellermann authored
This has been reimplemented in the "rewind" input plugin.
-
- 29 Dec, 2009 1 commit
-
-
Max Kellermann authored
This replaces the rewinding buffer code from the CURL input plugin. It is more generic, and allows rewinding even when the server sends Icy-Metadata (which would have been too difficult to implement within the CURL plugin). This is a rather complex patch for the stable branch (v0.15.x), but it fixes a serious problem: the "vorbis" decoder plugin was unable to play streams with Icy-Metadata, because it couldn't rewind the stream after detecting the codec (Vorbis vs. FLAC).
-
- 16 Dec, 2009 3 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
This fixes a NULL pointer dereference in case of archive plugin failure.
-
Max Kellermann authored
Make archive_file a "real" struct, extended by all plugins. Add the plugin pointer to it. Wrap all method calls in functions.
-
- 15 Dec, 2009 5 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
.. instead of manually checking pathname[0]=='/'. g_path_is_absolute() is portable.
-
Max Kellermann authored
Fixed memory leak in error handler.
-
Max Kellermann authored
This code has never made any sense, and has broken some of the archive plugin.
-
Max Kellermann authored
This code has never made any sense, and has broken some of the archive plugin.
-
- 14 Dec, 2009 1 commit
-
-
Max Kellermann authored
Not used by any plugin currently, but this eliminates the g_error() call in input_plugin_config(), so it's worth it.
-
- 12 Nov, 2009 1 commit
-
-
Max Kellermann authored
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.
-
- 10 Nov, 2009 1 commit
-
-
Max Kellermann authored
Drop the required GLib version from 2.16 to 2.12, because many current systems still don't have GLib 2.16. This requires several new compatibility functions in glib_compat.h.
-