| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Check if the message was cancelled before the request is sent.
|
|
|
|
| |
This reverts commit 517eb93f33e3d5dcf7ba059608114fc9e36b62af.
|
|
|
|
| |
This reverts commit b9f4f0367704e4d7f6004645c24887a979014f10.
|
|
|
|
| |
This reverts commit a15107a70b4b2b0b5bda241f037d09af403db96e.
|
|
|
|
| |
This might fix #342
|
|
|
|
|
|
|
|
|
|
|
|
| |
This helps in identifying what’s attached to a `GMainContext` when
debugging runtime problems with libsoup.
The names added in `soup-misc.c` are fairly rough; if they turn out to
not be specific enough, those methods could be changed to accept a
`const gchar *name` argument so the caller can provide a more specific
name.
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
|
|
|
|
|
|
|
| |
This makes it easier to identify what a `GTask` instance is when
debugging a running process.
Signed-off-by: Philip Withnall <pwithnall@endlessos.org>
|
|
|
|
| |
This can happen now that we are handling the cancellation earlier.
|
|
|
|
| |
Check if the message was cancelled on every queue state loop iteration.
|
| |
|
| |
|
|
|
|
| |
Fixes: 25e96cad913cde650ca56ff76c3924fd97eb7125
|
|
|
|
| |
Fixes #335
|
|
|
|
| |
Closes #334
|
|
|
|
|
|
|
| |
When skipping the response body the given buffer is NULL, which is
not handled for chunked enconding when reading the trailers.
Fixes #323
|
|
|
|
|
|
| |
This way we release the connection earlier, since other requests might
be waiting for the connection. We can also remove manual loop iterations
in the tests after a request is done.
|
|
|
|
|
| |
The documentation for soup_cookie_jar_add_cookie_full() states
NULL uris are always treated as a secure origin.
|
|
|
|
|
|
|
|
| |
This way also the libsoup library users can force HTTP/1 version
only for some messages, not for the whole process (through
the environment variable).
Closes https://gitlab.gnome.org/GNOME/libsoup/-/issues/261
|
|
|
|
|
|
| |
The environment variables usually do not change during runtime,
it's unexpected even for this semi-debugging variable, thus
let it be read only once and the result being used repeatedly.
|
|
|
|
| |
And with the connection manager mutex locked.
|
|
|
|
|
|
| |
The cookies spec defines whitespace as that. Previously
we handled everything `isspace()` considered whitespace
such as newlines which is incorrect.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
This is a spec that Firefox and Chrome implement:
https://datatracker.ietf.org/doc/html/draft-ietf-httpbis-cookie-prefixes-00
Closes #349
Closes #326
Co-authored-by: Patrick Griffis <pgriffis@igalia.com>
|
| |
|
|
|
|
|
|
|
|
|
| |
soup_message_new_from_uri() raises a critical if SOUP_URI_IS_VALID
returns FALSE. This macro also checks if the URI host is not an empty
string, which was not checked in the caller code.
Fix critical when running such GStreamer pipeline:
gst-launch-1.0 souphttpsrc location=http:///not-there.ogg ! fakesink
|
|
|
|
|
|
| |
It can be used to monitor the progress of the read operation.
Fixes #319
|
|
|
|
| |
Fixes #322
|
|
|
|
|
|
|
| |
The GHashTable is not thread safe, thus add a thread safety around it,
to avoid issues when it's accessed from multiple threads at the same time.
Closes https://gitlab.gnome.org/GNOME/libsoup/-/issues/317
|
|
|
|
|
|
|
| |
soup_session_send_and_splice_async()
This is convenient API for reading the request body stream and writing
it to an output stream.
|
|
|
|
|
|
|
|
|
| |
The initial message contains a cycle-reference to the connection. We
need to decrement the reference in order to properly clean up the
connection.
Before this patch, it was possible SoupServerConnection-finalize was
never called. This was causing a memory leak (and socket FD leak).
|
|
|
|
|
|
|
| |
As per https://datatracker.ietf.org/doc/html/draft-west-cookie-incrementalism-00,
the default value is now Lax.
This change was introduced in Chrome 80 and Firefox 96.
|
|
|
|
| |
Fixes #314
|
| |
|
|
|
|
|
|
| |
Previously this used the GDataSet API to avoid modifying the public
SoupCookie struct in libsoup2, however since this is now an opaque
struct we can just directly include it.
|
|
|
|
|
| |
It is valid for a SoupCookie to be constructed with a NULL path
and strcmp() isn't NULL safe.
|
| |
|
|
|
|
|
| |
It can happen in http2, that one stream is paused, but the connection is
closed due to an io error, or the client closed the connection.
|
| |
|
| |
|
|
|
|
|
|
| |
It happens when the io data is destroyed during the io_run_until().
Fixes #309
|
|
|
|
|
|
| |
When soup_server_connection_steal() is called disconnected signal is not
emitted, so SoupServer doesn't remove the connection from the client
list.
|
|
|
|
|
|
|
| |
If the `conn` has been freed due to stealing, we don't disconnect but we
still need to clean up the socket.
Fixes: https://gitlab.gnome.org/GNOME/libsoup/-/merge_requests/321#note_1578921
|
|
|
|
| |
They are always considered text/plain like in http1.
|
|
|
|
|
|
| |
It can happen in case of cancellation.
Fixes #305
|
|
|
|
|
|
| |
Previously we transferred the ownership of the socket to the io stream,
but now we keep the ref in the connection that can be disposed before
the io stream.
|
| |
|
|
|
|
| |
A session running only sync items doesn't need the queue sources at all.
|
| |
|
|
|
|
| |
Fixes #308
|
| |
|