From afaba6a7ffacfd515dd5f29e3d85f08f953bb39a Mon Sep 17 00:00:00 2001 From: Jonathan Hui Date: Thu, 18 Aug 2016 13:32:53 -0700 Subject: [PATCH] Do not signal network data update if nothing has changed. (#416) --- src/core/thread/network_data_leader.cpp | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/src/core/thread/network_data_leader.cpp b/src/core/thread/network_data_leader.cpp index abcf25974..1995fafad 100644 --- a/src/core/thread/network_data_leader.cpp +++ b/src/core/thread/network_data_leader.cpp @@ -445,19 +445,21 @@ void Leader::RemoveBorderRouter(uint16_t aRloc16) bool rlocStable = false; RlocLookup(aRloc16, rlocIn, rlocStable, mTlvs, mLength); - if (rlocIn) - { - RemoveRloc(aRloc16); - mVersion++; + VerifyOrExit(rlocIn, ;); - if (rlocStable) - { - mStableVersion++; - } + RemoveRloc(aRloc16); + mVersion++; + + if (rlocStable) + { + mStableVersion++; } mMle.HandleNetworkDataUpdate(); mNetif.SetStateChangedFlags(OT_THREAD_NETDATA_UPDATED); + +exit: + return; } void Leader::HandleServerData(void *aContext, Coap::Header &aHeader, Message &aMessage,