Bläddra i källkod

[LWIP] fixed closesocket issues: socket has been closed, delete it from file system fd.

aozima 7 år sedan
förälder
incheckning
a2d1f21b43
1 ändrade filer med 7 tillägg och 0 borttagningar
  1. 7 0
      components/dfs/filesystems/net/net_sockets.c

+ 7 - 0
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);
 }