--- a/networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp Wed Apr 14 17:34:42 2010 +0300
+++ b/networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp Tue Apr 27 18:14:09 2010 +0300
@@ -229,8 +229,11 @@
THROUGH_NODEACTIVITY_ENTRY(KActiveTag, CoreNetStates::TCancelDataClientStart, MeshMachine::TNoTag)
NODEACTIVITY_ENTRY(KNoTag, CoreNetStates::TStopSelf, CoreNetStates::TAwaitingDataClientStopped, CoreNetStates::TNoTagOrNoBearer)
NODEACTIVITY_ENTRY(KNoTag, CoreNetStates::TSendStop, CoreNetStates::TAwaitingStopped, MeshMachine::TNoTag)
- NODEACTIVITY_ENTRY(KNoTag, CoreNetStates::TSendClientLeavingRequestToServiceProvider, MeshMachine::TAwaitingLeaveComplete, TTag<CoreNetStates::KNoBearer>)
- LAST_NODEACTIVITY_ENTRY(CoreNetStates::KNoBearer, IpProtoCpr::TSendStoppedAndGoneDown)
+ NODEACTIVITY_ENTRY(KNoTag, CoreNetStates::TSendClientLeavingRequestToServiceProvider, MeshMachine::TAwaitingLeaveComplete, TTag<CoreNetStates::KNoBearer>)
+ THROUGH_NODEACTIVITY_ENTRY(CoreNetStates::KNoBearer, IpProtoCpr::TSendStoppedAndGoneDown, MeshMachine::TNoTag)
+ //Ensure that we reset the iLinkUp flag, otherwise a Start activity blocked against this Stop activity will
+ //cause an assertion failure as iLinkUp will be set twice.
+ LAST_NODEACTIVITY_ENTRY(KNoTag, IpProtoCpr::TLinkDown)
NODEACTIVITY_END()
}