diff mbox

[FFmpeg-devel,16/22] lavfhttpd.c: Detect disconnected clients through amount of bytes written.

Message ID 20180531222415.24966-17-klaxa1337@googlemail.com
State New
Headers show

Commit Message

Stephan Holljes May 31, 2018, 10:24 p.m. UTC
Signed-off-by: Stephan Holljes <klaxa1337@googlemail.com>
---
 lavfhttpd.c | 6 ++++++
 1 file changed, 6 insertions(+)
diff mbox

Patch

diff --git a/lavfhttpd.c b/lavfhttpd.c
index b1e8819..9f56620 100644
--- a/lavfhttpd.c
+++ b/lavfhttpd.c
@@ -120,8 +120,14 @@  int lavfhttpd_accept(void *server, struct HTTPClient **client, int reply_code)
 int lavfhttpd_write(void *server, struct HTTPClient *client, const unsigned char *buf, int size)
 {
     AVIOContext *client_ctx = (AVIOContext*) client->httpd_data;
+    int64_t old_written = client_ctx->written;
+    int64_t actual_written;
     avio_write(client_ctx, buf, size);
     avio_flush(client_ctx);
+    actual_written = client_ctx->written - old_written;
+    if (actual_written < size) {
+        return AVERROR_EOF;
+    }
     return size;
 }