From 77b80ca67bfcff5bae646943a57e92bf30332192 Mon Sep 17 00:00:00 2001 From: Lorenz Stechauner Date: Wed, 13 Jan 2021 21:21:24 +0100 Subject: [PATCH] Bugfix splice --- src/sock.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/sock.c b/src/sock.c index 649466c..3fd21a6 100644 --- a/src/sock.c +++ b/src/sock.c @@ -81,7 +81,7 @@ long sock_splice(sock *dst, sock *src, void *buf, unsigned long buf_len, unsigne next_len = (buf_len < (len - send_len)) ? buf_len : (len - send_len); ret = sock_recv(src, buf, next_len, 0); if (ret < 0) return -2; - if (ret != next_len) return -3; + next_len = ret; ret = sock_send(dst, buf, next_len, send_len + next_len < len ? MSG_MORE : 0); if (ret < 0) return -1; if (ret != next_len) return -3;