From: Gonglei <arei.gong...@huawei.com> In this false branch, fd will leak when it is zero. Change the testing condition.
Signed-off-by: Gonglei <arei.gong...@huawei.com> [Fix net_l2tpv3_cleanup as well. - Paolo] Signed-off-by: Paolo Bonzini <pbonz...@redhat.com> --- net/l2tpv3.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/l2tpv3.c b/net/l2tpv3.c index 65db5ef..3b805a7 100644 --- a/net/l2tpv3.c +++ b/net/l2tpv3.c @@ -516,7 +516,7 @@ static void net_l2tpv3_cleanup(NetClientState *nc) qemu_purge_queued_packets(nc); l2tpv3_read_poll(s, false); l2tpv3_write_poll(s, false); - if (s->fd > 0) { + if (s->fd >= 0) { close(s->fd); } destroy_vector(s->msgvec, MAX_L2TPV3_MSGCNT, IOVSIZE); @@ -745,7 +745,7 @@ int net_init_l2tpv3(const NetClientOptions *opts, return 0; outerr: qemu_del_net_client(nc); - if (fd > 0) { + if (fd >= 0) { close(fd); } if (result) { -- 1.8.3.1