From 5e61cc2344f80dcff2bb71924a8a2a4e90da166e Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Wed, 23 Nov 2016 10:11:00 -0800 Subject: [PATCH] Do not call otPlatRadioEnableSrcMatch in constructor. (#1008) --- src/core/thread/mesh_forwarder.cpp | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/src/core/thread/mesh_forwarder.cpp b/src/core/thread/mesh_forwarder.cpp index bb602a00e..042f2c707 100644 --- a/src/core/thread/mesh_forwarder.cpp +++ b/src/core/thread/mesh_forwarder.cpp @@ -80,9 +80,7 @@ MeshForwarder::MeshForwarder(ThreadNetif &aThreadNetif): mMeshSource = Mac::kShortAddrInvalid; mMeshDest = Mac::kShortAddrInvalid; mAddMeshHeader = false; - - mMac.EnableSrcMatch(true); - mSrcMatchEnabled = true; + mSrcMatchEnabled = false; mMac.RegisterReceiver(mMacReceiver); } @@ -320,6 +318,12 @@ ThreadError MeshForwarder::AddSrcMatchEntry(Child &aChild) { // succeed in adding to source match table aChild.mAddSrcMatchEntryPending = false; + + if (!mSrcMatchEnabled) + { + mMac.EnableSrcMatch(true); + mSrcMatchEnabled = true; + } } else {