summaryrefslogtreecommitdiff
path: root/proxy.c
diff options
context:
space:
mode:
authorDavid Härdeman <david@hardeman.nu>2020-06-10 22:53:42 +0200
committerDavid Härdeman <david@hardeman.nu>2020-06-10 22:53:42 +0200
commitfd80ac9b3ea3c6e213236e27ae8b73856d2a5158 (patch)
tree427ab05ca9d0e50099787d89aedb98a374f2d217 /proxy.c
parent5e314fd0ebe500d3ba396a09c8984627beff2f37 (diff)
Improve refcounting
Diffstat (limited to 'proxy.c')
-rw-r--r--proxy.c12
1 files changed, 3 insertions, 9 deletions
diff --git a/proxy.c b/proxy.c
index 38f5cea..eaa831b 100644
--- a/proxy.c
+++ b/proxy.c
@@ -103,15 +103,9 @@ proxy_delete(struct cfg *cfg, struct server_proxy *proxy)
fprintf(stderr, "%s: shutting down proxy 0x%p\n", __func__, proxy);
/* FIXME: review half-open proxy situation */
- if (proxy->servertask.fd >= 0)
- uring_cancel(cfg, &proxy->servertask);
-
- if (proxy->clienttask.fd >= 0)
- uring_cancel(cfg, &proxy->clienttask);
-
- uring_task_put(cfg, &proxy->servertask);
- uring_task_put(cfg, &proxy->clienttask);
- uring_task_put(cfg, &proxy->task);
+ uring_task_destroy(cfg, &proxy->servertask);
+ uring_task_destroy(cfg, &proxy->clienttask);
+ uring_task_destroy(cfg, &proxy->task);
}
static void proxy_client_data_in(struct cfg *cfg, struct uring_task *task, int res);