diff -r 6d5320894977 -r 75c06c88bfa3 networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp --- a/networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp Fri Apr 30 16:42:24 2010 +0100 +++ b/networkcontrol/ipnetworklayer/src/IPProtoCPR.cpp Fri Apr 30 16:48:33 2010 +0100 @@ -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) - LAST_NODEACTIVITY_ENTRY(CoreNetStates::KNoBearer, IpProtoCpr::TSendStoppedAndGoneDown) + NODEACTIVITY_ENTRY(KNoTag, CoreNetStates::TSendClientLeavingRequestToServiceProvider, MeshMachine::TAwaitingLeaveComplete, TTag) + 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() }