From 7a459ab4e216d157adc5b3f916f3a1ff2ceb69d8 Mon Sep 17 00:00:00 2001 From: Pankaj Garg Date: Tue, 15 Jun 2021 18:01:10 -0700 Subject: [PATCH] persist counter if device is connected --- src/controller/CHIPDevice.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/controller/CHIPDevice.cpp b/src/controller/CHIPDevice.cpp index 3c088fcbaeb6d3..82caefdb39f3a2 100644 --- a/src/controller/CHIPDevice.cpp +++ b/src/controller/CHIPDevice.cpp @@ -170,9 +170,11 @@ CHIP_ERROR Device::Serialize(SerializedDevice & output) serializable.mAdminId = Encoding::LittleEndian::HostSwap16(mAdminId); Transport::PeerConnectionState * connectionState = mSessionManager->GetPeerConnectionState(mSecureSession); - VerifyOrExit(connectionState != nullptr, error = CHIP_ERROR_INCORRECT_STATE); - localMessageCounter = connectionState->GetSessionMessageCounter().GetLocalMessageCounter().Value(); - peerMessageCounter = connectionState->GetSessionMessageCounter().GetPeerMessageCounter().GetCounter(); + if (connectionState != nullptr) + { + localMessageCounter = connectionState->GetSessionMessageCounter().GetLocalMessageCounter().Value(); + peerMessageCounter = connectionState->GetSessionMessageCounter().GetPeerMessageCounter().GetCounter(); + } serializable.mLocalMessageCounter = Encoding::LittleEndian::HostSwap32(localMessageCounter); serializable.mPeerMessageCounter = Encoding::LittleEndian::HostSwap32(peerMessageCounter);