diff --git a/engine/server/application/ConnectionServer/src/shared/SessionApiClient.cpp b/engine/server/application/ConnectionServer/src/shared/SessionApiClient.cpp index 67598bb4..10f030fa 100755 --- a/engine/server/application/ConnectionServer/src/shared/SessionApiClient.cpp +++ b/engine/server/application/ConnectionServer/src/shared/SessionApiClient.cpp @@ -19,6 +19,8 @@ #include "sharedGame/PlatformFeatureBits.h" #include "sharedLog/Log.h" +#include "sharedFoundation/CrcConstexpr.hpp" + #include #include #include @@ -308,14 +310,26 @@ void SessionApiClient::OnGetFeatures(const apiTrackingNumber trackingNumber, AdjustAccountFeatureIdResponse * adjustAccountFeatureIdResponse = nullptr; ClaimRewardsMessage * claimRewardsMessage = nullptr; - if (i->second->isType("AccountFeatureIdRequest")) - accountFeatureIdRequest = dynamic_cast(i->second); - else if (i->second->isType("AdjustAccountFeatureIdRequest")) - adjustAccountFeatureIdRequest = dynamic_cast(i->second); - else if (i->second->isType("AdjustAccountFeatureIdResponse")) - adjustAccountFeatureIdResponse = dynamic_cast(i->second); - else if (i->second->isType("ClaimRewardsMessage")) - claimRewardsMessage = dynamic_cast(i->second); + const uint32 msgType = i->second->getType(); + + switch(msgType) { + case constcrc("AccountFeatureIdRequest") : { + accountFeatureIdRequest = dynamic_cast(i->second); + break; + } + case constcrc("AdjustAccountFeatureIdRequest" : { + adjustAccountFeatureIdRequest = dynamic_cast(i->second); + break; + } + case constcrc("AdjustAccountFeatureIdResponse" : { + adjustAccountFeatureIdResponse = dynamic_cast(i->second); + break; + } + case constcrc("ClaimRewardsMessage" : { + claimRewardsMessage = dynamic_cast(i->second); + break; + } + } if (result == RESULT_SUCCESS) {