diff options
author | Yalei Wang <william.wangyalei@huawei.com> | 2018-07-31 11:04:04 +0800 |
---|---|---|
committer | Yalei Wang <william.wangyalei@huawei.com> | 2018-07-31 11:04:04 +0800 |
commit | 5c6451f8dfcf6a145d5e49051f40197d328ee4b7 (patch) | |
tree | 2f40831660360949ca45b1caf5a673e921bdb23a /src/nSocket | |
parent | 51884d17a7e9a5a6f15ac95707303a8479c1013f (diff) |
Fix: epoll close process bug
epinfo should be set to NULL only after the related epi released.
Change-Id: Ic367aee960fe38a9af695c458bb2ee5b06f90fb5
Signed-off-by: Yalei Wang <william.wangyalei@huawei.com>
Diffstat (limited to 'src/nSocket')
-rw-r--r-- | src/nSocket/nstack/event/epoll/nstack_eventpoll.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/src/nSocket/nstack/event/epoll/nstack_eventpoll.c b/src/nSocket/nstack/event/epoll/nstack_eventpoll.c index 9a753e9..a4ce0cc 100644 --- a/src/nSocket/nstack/event/epoll/nstack_eventpoll.c +++ b/src/nSocket/nstack/event/epoll/nstack_eventpoll.c @@ -753,13 +753,16 @@ nsep_epoll_close (int sock) return 0; } - nsep_set_infoSockMap (sock, NULL); - if (NSTACK_EPOL_FD == epInfo->fdtype) { - return nsp_epoll_close_ep_fd (sock, epInfo); + ret = nsp_epoll_close_ep_fd (sock, epInfo); + nsep_set_infoSockMap (sock, NULL); + return ret; } + nsep_set_infoSockMap (sock, NULL); + + nstack_each_modInx (modInx) { if (0 == (epInfo->epaddflag & (1 << modInx))) |