Skip to content

Commit 00f8ecf

Browse files
author
Cruz Monrreal
authored
Merge pull request #8336 from sentinelt/socket-closed
Fix hard-fault when socket created using accept() is closed
2 parents b666cd6 + 9b89ad2 commit 00f8ecf

File tree

2 files changed

+5
-0
lines changed

2 files changed

+5
-0
lines changed

UNITTESTS/features/netsocket/InternetSocket/test_InternetSocket.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -222,6 +222,7 @@ TEST_F(TestInternetSocket, getsockopt)
222222
TEST_F(TestInternetSocket, sigio)
223223
{
224224
callback_is_called = false;
225+
socket->open((NetworkStack *)&stack);
225226
socket->sigio(mbed::callback(my_callback));
226227
socket->close(); // Trigger event;
227228
EXPECT_EQ(callback_is_called, true);

features/netsocket/InternetSocket.cpp

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,10 @@ nsapi_error_t InternetSocket::close()
5656
_lock.lock();
5757

5858
nsapi_error_t ret = NSAPI_ERROR_OK;
59+
if (!_stack) {
60+
return ret;
61+
}
62+
5963
if (_socket) {
6064
_stack->socket_attach(_socket, 0, 0);
6165
nsapi_socket_t socket = _socket;

0 commit comments

Comments
 (0)