From e4b8bfaa3d5d2eae866201bbb6c6649e6875a6b7 Mon Sep 17 00:00:00 2001 From: Timo Rothenpieler Date: Thu, 26 Jul 2018 00:37:35 +0200 Subject: [PATCH] avformat/librtmp: fix returning EOF from Read/Write --- libavformat/librtmp.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/libavformat/librtmp.c b/libavformat/librtmp.c index f3cfa9a8e2527..43013e46e0a75 100644 --- a/libavformat/librtmp.c +++ b/libavformat/librtmp.c @@ -261,7 +261,10 @@ static int rtmp_write(URLContext *s, const uint8_t *buf, int size) LibRTMPContext *ctx = s->priv_data; RTMP *r = &ctx->rtmp; - return RTMP_Write(r, buf, size); + int ret = RTMP_Write(r, buf, size); + if (!ret) + return AVERROR_EOF; + return ret; } static int rtmp_read(URLContext *s, uint8_t *buf, int size) @@ -269,7 +272,10 @@ static int rtmp_read(URLContext *s, uint8_t *buf, int size) LibRTMPContext *ctx = s->priv_data; RTMP *r = &ctx->rtmp; - return RTMP_Read(r, buf, size); + int ret = RTMP_Read(r, buf, size); + if (!ret) + return AVERROR_EOF; + return ret; } static int rtmp_read_pause(URLContext *s, int pause)