summaryrefslogtreecommitdiff
path: root/libsoup/server/http1/soup-server-message-io-http1.c
diff options
context:
space:
mode:
Diffstat (limited to 'libsoup/server/http1/soup-server-message-io-http1.c')
-rw-r--r--libsoup/server/http1/soup-server-message-io-http1.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/libsoup/server/http1/soup-server-message-io-http1.c b/libsoup/server/http1/soup-server-message-io-http1.c
index 8d1be9ab..90139f2b 100644
--- a/libsoup/server/http1/soup-server-message-io-http1.c
+++ b/libsoup/server/http1/soup-server-message-io-http1.c
@@ -925,6 +925,14 @@ io_run (SoupServerMessageIOHTTP1 *server_io)
SOUP_MESSAGE_IO_STATE_DONE,
SOUP_MESSAGE_IO_STATE_DONE,
&error);
+
+ if (soup_server_message_get_io_data (msg) != (SoupServerMessageIO *)server_io) {
+ g_object_unref (msg);
+ g_clear_error (&error);
+
+ return;
+ }
+
server_io->in_io_run = FALSE;
if (success) {