Commit 0ef15e5f authored by Max Kellermann's avatar Max Kellermann

input/soup: unlock before cancelling the soup message

Avoid recursive deadlock in _session_callback().
parent 9ea8a840
...@@ -246,12 +246,14 @@ input_soup_close(struct input_stream *is) ...@@ -246,12 +246,14 @@ input_soup_close(struct input_stream *is)
if (s->alive) { if (s->alive) {
assert(s->msg != NULL); assert(s->msg != NULL);
soup_session_cancel_message(soup_session, s->msg,
SOUP_STATUS_CANCELLED);
s->alive = false; s->alive = false;
} g_mutex_unlock(s->mutex);
soup_session_cancel_message(soup_session, s->msg,
SOUP_STATUS_CANCELLED);
} else
g_mutex_unlock(s->mutex); g_mutex_unlock(s->mutex);
g_mutex_free(s->mutex); g_mutex_free(s->mutex);
g_cond_free(s->cond); g_cond_free(s->cond);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment