Skip to content

Commit dee181d

Browse files
authored
Thread: clean commissioning proxy thread (project-chip#43372)
1 parent 653394e commit dee181d

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

src/controller/ThreadMeshcopCommissionProxy.cpp

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -76,9 +76,14 @@ ThreadMeshcopCommissionProxy::ThreadMeshcopCommissionProxy() : mState(State::kCo
7676

7777
ThreadMeshcopCommissionProxy::~ThreadMeshcopCommissionProxy()
7878
{
79+
std::lock_guard<std::recursive_mutex> lock(mMutex);
7980
if (mProxyFd != -1)
8081
{
81-
close(mProxyFd);
82+
if (shutdown(mProxyFd, SHUT_RDWR) == 0 || errno != EBADF)
83+
{
84+
close(mProxyFd);
85+
}
86+
8287
mProxyFd = -1;
8388
}
8489

0 commit comments

Comments
 (0)