From 7c31224bab9228da9b1028847eacdeb8ffe2fc5b Mon Sep 17 00:00:00 2001 From: yuqianyuan Date: Tue, 17 Aug 2021 10:19:37 +0800 Subject: [PATCH] bug fix Signed-off-by: yuqianyuan --- .../include/authdemo/hichain_adapter.h | 1 - .../src/authdemo/hichain_adapter.cpp | 17 +++++++++++------ 2 files changed, 11 insertions(+), 7 deletions(-) diff --git a/services/devicemanagerservice/include/authdemo/hichain_adapter.h b/services/devicemanagerservice/include/authdemo/hichain_adapter.h index bc9b23ea6..55ca7e5b2 100644 --- a/services/devicemanagerservice/include/authdemo/hichain_adapter.h +++ b/services/devicemanagerservice/include/authdemo/hichain_adapter.h @@ -91,7 +91,6 @@ private: private: std::atomic requestIdIndex_ {0}; - nlohmann::json bindRequestJsonObj_; std::map bindingDeviceMap_; std::map> clientBindReqMap_; std::map> bindCallBackMap_; diff --git a/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp b/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp index ebf5e1dba..5ccc74020 100644 --- a/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp +++ b/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp @@ -18,6 +18,7 @@ #include #include #include +#include #include "parameter.h" @@ -26,6 +27,7 @@ #include "device_manager_log.h" #include "device_server_channel.h" + namespace OHOS { namespace DistributedHardware { namespace { @@ -262,13 +264,16 @@ char* HichainAdapter::OnBindRequest(int64_t requestId, int operationCode, const (void)reqParams; HILOGI("HichainAdapter::OnBindRequest."); - bindRequestJsonObj_.clear(); - bindRequestJsonObj_[FIELD_CONFIRMATION] = REQUEST_ACCEPTED; - bindRequestJsonObj_[FIELD_PIN_CODE] = PIN_CODE; + nlohmann::json jsonObj; + jsonObj[FIELD_CONFIRMATION] = REQUEST_ACCEPTED; + jsonObj[FIELD_PIN_CODE] = PIN_CODE; char localDeviceId[DEVICE_UUID_LENGTH] = {0}; GetDevUdid(localDeviceId, DEVICE_UUID_LENGTH); - bindRequestJsonObj_[FIELD_DEVICE_ID] = localDeviceId; - return (char*) bindRequestJsonObj_.dump().c_str(); + jsonObj[FIELD_DEVICE_ID] = localDeviceId; + + std::string jsonStr = jsonObj.dump(); + char *buffer = strdup(jsonStr.c_str()); + return buffer; } void HichainAdapter::OnBindSuccess(int64_t requestId, const char* returnData) @@ -372,7 +377,7 @@ void HichainAuthCallBack::onError(int64_t requestId, int operationCode, int erro char* HichainAuthCallBack::onBindRequest(int64_t requestId, int operationCode, const char *reqParams) { - HILOGI("HichainAuthCallBack::onBindRequest reqId:%{public}lld, operation:%{public}d.", requestId, operationCode); + HILOGI("HichainAuthCallBack::onBindRequest reqId:%{public}lld, operation: %{public}d.", requestId, operationCode); return HichainAdapter::GetInstance().OnBindRequest(requestId, operationCode, reqParams); } } -- Gitee