summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2022-08-29 11:35:38 +0200
committerCarlos Garcia Campos <cgarcia@igalia.com>2022-08-31 11:09:26 +0200
commit1b60814b152c973d3a71b1ef9e149b6632a9ecd0 (patch)
treee880eac2678b2c2e1240ff19784ecd9411024b31
parentbe1a70489e314edb3a11ba92e2505733755239a0 (diff)
downloadlibsoup-1b60814b152c973d3a71b1ef9e149b6632a9ecd0.tar.gz
http2: mark IO as shutting down before processing async pending messages
-rw-r--r--libsoup/http2/soup-client-message-io-http2.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/libsoup/http2/soup-client-message-io-http2.c b/libsoup/http2/soup-client-message-io-http2.c
index 849a9843..528c4e36 100644
--- a/libsoup/http2/soup-client-message-io-http2.c
+++ b/libsoup/http2/soup-client-message-io-http2.c
@@ -415,6 +415,8 @@ io_read_ready (GObject *stream,
return G_SOURCE_CONTINUE;
}
+ io->is_shutdown = TRUE;
+
if (error) {
set_io_error (io, error);
g_list_foreach (io->pending_io_messages,
@@ -422,8 +424,6 @@ io_read_ready (GObject *stream,
NULL);
}
- io->is_shutdown = TRUE;
-
g_clear_pointer (&io->read_source, g_source_unref);
if (conn) {
soup_connection_set_in_use (conn, FALSE);