summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCarlos Garcia Campos <cgarcia@igalia.com>2023-04-11 10:41:04 +0200
committerCarlos Garcia Campos <cgarcia@igalia.com>2023-04-11 10:41:04 +0200
commitb9f4f0367704e4d7f6004645c24887a979014f10 (patch)
tree7d2b331aee1700fd8a76eaec1f6ce50b4bb448fb
parent517eb93f33e3d5dcf7ba059608114fc9e36b62af (diff)
downloadlibsoup-b9f4f0367704e4d7f6004645c24887a979014f10.tar.gz
session: do not finish an already finished item
This can happen now that we are handling the cancellation earlier.
-rw-r--r--libsoup/soup-session.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/libsoup/soup-session.c b/libsoup/soup-session.c
index 5acf60a8..78dacd03 100644
--- a/libsoup/soup-session.c
+++ b/libsoup/soup-session.c
@@ -1469,7 +1469,7 @@ message_completed (SoupMessage *msg, SoupMessageIOCompletion completion, gpointe
if (item->state == SOUP_MESSAGE_REQUEUED)
item->state = SOUP_MESSAGE_RESTARTING;
- if (item->state != SOUP_MESSAGE_RESTARTING) {
+ if (item->state != SOUP_MESSAGE_RESTARTING && item->state != SOUP_MESSAGE_FINISHED) {
item->state = SOUP_MESSAGE_FINISHING;
soup_session_process_queue_item (item->session, item, !item->async);
}