summaryrefslogtreecommitdiff
path: root/components/net/at
diff options
context:
space:
mode:
authorchenyong <[email protected]>2018-08-31 14:45:40 +0800
committerchenyong <[email protected]>2018-08-31 14:45:40 +0800
commit33a5cf15ee017d56cc52af475bb7cb9b92cb1bac (patch)
treeb2973ffb7f02ceb9aab6e7739861b8e02e07b233 /components/net/at
parenta3ea0565cf4c21e418bc4d174551e89d79dd07d8 (diff)
[net][at] Modify AT socket object release judgment
Diffstat (limited to 'components/net/at')
-rw-r--r--components/net/at/at_socket/at_socket.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/components/net/at/at_socket/at_socket.c b/components/net/at/at_socket/at_socket.c
index d300415d86..c21d019717 100644
--- a/components/net/at/at_socket/at_socket.c
+++ b/components/net/at/at_socket/at_socket.c
@@ -404,11 +404,13 @@ int at_closesocket(int socket)
if (at_dev_ops->at_closesocket(socket) != 0)
{
LOG_E("AT socket (%d) closesocket failed!", socket);
+ free_socket(sock);
return -1;
}
}
- return free_socket(sock);
+ free_socket(sock);
+ return 0;
}
int at_shutdown(int socket, int how)
@@ -431,11 +433,13 @@ int at_shutdown(int socket, int how)
if (at_dev_ops->at_closesocket(socket) != 0)
{
LOG_E("AT socket (%d) shutdown failed!", socket);
+ free_socket(sock);
return -1;
}
}
- return free_socket(sock);
+ free_socket(sock);
+ return 0;
}
int at_bind(int socket, const struct sockaddr *name, socklen_t namelen)