From c222a6a45182f3db53b23aa28d38a68e5c9083ec Mon Sep 17 00:00:00 2001 From: shaojinchun Date: Mon, 1 Mar 2021 21:52:15 +0800 Subject: [PATCH] =?UTF-8?q?dfs=5Fnet=5Fclose=E5=A2=9E=E5=8A=A0=E5=A4=9A?= =?UTF-8?q?=E4=BB=BB=E5=8A=A1=E6=94=AF=E6=8C=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components/net/sal_socket/dfs_net/dfs_net.c | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/components/net/sal_socket/dfs_net/dfs_net.c b/components/net/sal_socket/dfs_net/dfs_net.c index 0d88674105..f8c4b4a91f 100644 --- a/components/net/sal_socket/dfs_net/dfs_net.c +++ b/components/net/sal_socket/dfs_net/dfs_net.c @@ -55,9 +55,15 @@ static int dfs_net_write(struct dfs_fd *file, const void *buf, size_t count) static int dfs_net_close(struct dfs_fd* file) { - int socket = (int) file->fnode->data; - - return sal_closesocket(socket); + int socket; + int ret = 0; + + if (file->fnode->ref_count == 1) + { + socket = (int) file->fnode->data; + ret = sal_closesocket(socket); + } + return ret; } static int dfs_net_poll(struct dfs_fd *file, struct rt_pollreq *req) -- Gitee