diff options
| author | aozima <[email protected]> | 2017-12-11 17:25:25 +0800 |
|---|---|---|
| committer | aozima <[email protected]> | 2017-12-14 16:52:46 +0800 |
| commit | a2d1f21b43c8613848f025b5a9fbe77a5031641e (patch) | |
| tree | f90a65ce177720261e15bccc4510a1b30f2161bf /components | |
| parent | c77cebc4c042d7a9d32adf4b171093737f18510d (diff) | |
[LWIP] fixed closesocket issues: socket has been closed, delete it from file system fd.
Diffstat (limited to 'components')
| -rw-r--r-- | components/dfs/filesystems/net/net_sockets.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/components/dfs/filesystems/net/net_sockets.c b/components/dfs/filesystems/net/net_sockets.c index a22fbdc9ad..4f33571129 100644 --- a/components/dfs/filesystems/net/net_sockets.c +++ b/components/dfs/filesystems/net/net_sockets.c @@ -327,6 +327,13 @@ RTM_EXPORT(socket); int closesocket(int s) { int sock = dfs_net_getsocket(s); + struct dfs_fd *d; + + d = fd_get(s); + + /* socket has been closed, delete it from file system fd */ + fd_put(d); + fd_put(d); return lwip_close(sock); } |
