diff --git a/libavformat/tcp.c b/libavformat/tcp.c index 8773493df1..b0289f854f 100644 --- a/libavformat/tcp.c +++ b/libavformat/tcp.c @@ -208,8 +208,10 @@ static int tcp_accept(URLContext *s, URLContext **c) return ret; cc = (*c)->priv_data; ret = ff_accept(sc->fd, sc->listen_timeout, s); - if (ret < 0) + if (ret < 0) { + ffurl_closep(c); return ret; + } cc->fd = ret; return 0; }