summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJens Georg <mail@jensge.org>2021-05-29 01:47:19 +0200
committerJens Georg <mail@jensge.org>2021-07-03 18:45:31 +0200
commitd7480ce693df0837f39bcfff6da823c5910ce44c (patch)
tree06b13701df746b821f8b576858a5f5c2e3a51fdb
parent1352be0e0bcb6d901011a78468f63c0d2f26f98b (diff)
downloadgupnp-d7480ce693df0837f39bcfff6da823c5910ce44c.tar.gz
ServiceProxy: Do not leak cancellable in sync call
-rw-r--r--libgupnp/gupnp-service-proxy.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libgupnp/gupnp-service-proxy.c b/libgupnp/gupnp-service-proxy.c
index d7d18ac..56d7522 100644
--- a/libgupnp/gupnp-service-proxy.c
+++ b/libgupnp/gupnp-service-proxy.c
@@ -2163,6 +2163,11 @@ gupnp_service_proxy_call_action (GUPnPServiceProxy *proxy,
session = gupnp_context_get_session (context);
soup_session_send_message (session, action->msg);
+ g_cancellable_disconnect (action->cancellable,
+ action->cancellable_connection_id);
+ action->cancellable_connection_id = 0;
+ g_clear_object (&action->cancellable);
+
/* If not allowed, try again */
if (action->msg->status_code == SOUP_STATUS_METHOD_NOT_ALLOWED) {
update_message_after_not_allowed (action->msg);