diff options
| author | Keyun-Johan <[email protected]> | 2020-04-12 19:22:19 +0800 |
|---|---|---|
| committer | Keyun-Johan <[email protected]> | 2020-04-12 19:22:19 +0800 |
| commit | 63e855d78a036891f1bcc49b771c928736288d7e (patch) | |
| tree | 3c67f3deb869376159a8955207cad4708921b4cb /components/net | |
| parent | 00f50941500ba250bb53e0beb84d75395140f2bd (diff) | |
socket_new()成功后,后续函数不成功返回-1,没有删除socket
Diffstat (limited to 'components/net')
| -rw-r--r-- | components/net/sal_socket/src/sal_socket.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/components/net/sal_socket/src/sal_socket.c b/components/net/sal_socket/src/sal_socket.c index e5c55f8bf8..a79890eb27 100644 --- a/components/net/sal_socket/src/sal_socket.c +++ b/components/net/sal_socket/src/sal_socket.c @@ -917,6 +917,7 @@ int sal_socket(int domain, int type, int protocol) socket = socket_new(); if (socket < 0) { + socket_delete(socket); return -1; } @@ -924,6 +925,7 @@ int sal_socket(int domain, int type, int protocol) sock = sal_get_socket(socket); if (sock == RT_NULL) { + socket_delete(socket); return -1; } @@ -956,7 +958,7 @@ int sal_socket(int domain, int type, int protocol) sock->user_data = (void *) proto_socket; return sock->socket; } - + socket_delete(socket); return -1; } |
