Move SetProtocolLayerCallback from InitiateSubscription to _prepareBinding
Make double sure the protocol callback is set on the binding object.
diff --git a/src/lib/profiles/data-management/Current/SubscriptionClient.cpp b/src/lib/profiles/data-management/Current/SubscriptionClient.cpp
index 393b083..f4dee8f 100644
--- a/src/lib/profiles/data-management/Current/SubscriptionClient.cpp
+++ b/src/lib/profiles/data-management/Current/SubscriptionClient.cpp
@@ -576,6 +576,9 @@
{
WEAVE_ERROR err = WEAVE_NO_ERROR;
+ // Make double sure the protocol callback is set on the binding object
+ mBinding->SetProtocolLayerCallback(BindingEventCallback, this);
+
WeaveLogDetail(DataManagement, "Client[%u] [%5.5s] %s Ref(%d)", SubscriptionEngine::GetInstance()->GetClientId(this),
GetStateStr(), __func__, mRefCount);
_AddRef();
@@ -863,9 +866,6 @@
{
mConfig = kConfig_Initiator;
- // Make double sure the protocol callback is set on the binding object
- mBinding->SetProtocolLayerCallback(BindingEventCallback, this);
-
if (IsRetryEnabled())
{
if (false == mBinding->IsPreparing())