| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
| |
Copy the reason_phrase from the SoupMessage, and check for transport
errors in the session callback.
|
|
|
|
|
|
|
|
|
| |
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.
|
|
|
|
|
| |
To check for errors without reading. The decoder thread wants to do
that, before it passes the input stream to the plugin.
|
|
|
|
| |
Fix memory leak.
|
|
|
|
|
| |
libsoup's asynchronous API is not thread safe. By moving the calls
into the I/O thread, several crash bugs will be fixed.
|
|
|
|
|
| |
Add the "complete" attribute, and set it in _session_callback().
_close() waits for it to become true.
|
|
|
|
|
| |
Add attribute postponed_error, pass this GError to the caller.
|
|
|
|
| |
Fix deadlock.
|
|
|
|
|
| |
We'll add proper locking now, and there's no need to carry this
duplicate flag.
|
|
|
|
| |
To report failures to callers who don't use _buffer().
|
|
|
|
| |
Avoid recursive deadlock in _session_callback().
|
| |
|
| |
|
| |
|
|
To demonstrate the new I/O thread. libsoup is well-integrated into
the GLib main loop, which made this plugin pretty easy to write.
As a side effect, we have to initialize the I/O thread in all debug
programs that use the input API.
|