Remove mNextHop value if it is set to link being removed. (#1311)

This commit is contained in:
Hubert Miś
2017-02-14 09:39:08 -08:00
committed by Jonathan Hui
parent 04026accdd
commit 8b2265bd42
+14
View File
@@ -1819,6 +1819,20 @@ void MleRouter::HandleStateUpdateTimer(void)
mRouters[i].mLinkQualityOut = 0;
mRouters[i].mLastHeard = Timer::GetNow();
for (uint8_t j = 0; j <= kMaxRouterId; j++)
{
if (mRouters[j].mNextHop == i)
{
mRouters[j].mNextHop = kInvalidRouterId;
mRouters[j].mCost = 0;
if (GetLinkCost(j) >= kMaxRouteCost)
{
ResetAdvertiseInterval();
}
}
}
if (mRouters[i].mNextHop == kInvalidRouterId)
{
ResetAdvertiseInterval();