From 2d0cfe7022aa5f4e40ac738cfb73e7af599e786d Mon Sep 17 00:00:00 2001 From: yuqianyuan Date: Sat, 14 Aug 2021 17:21:24 +0800 Subject: [PATCH 1/2] bug fix Signed-off-by: yuqianyuan --- .../include/authdemo/hichain_adapter.h | 1 - .../src/authdemo/hichain_adapter.cpp | 19 +++++++++++++------ 2 files changed, 13 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..6af501e71 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) @@ -373,7 +378,9 @@ 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); - return HichainAdapter::GetInstance().OnBindRequest(requestId, operationCode, reqParams); + char * ret = HichainAdapter::GetInstance().OnBindRequest(requestId, operationCode, reqParams); + HILOGI("HichainAuthCallBack::onBindRequest %{public}s", ret); + return ret; } } } -- Gitee From 831ec922f62723ae60aebf93ce8175bb777bb5c2 Mon Sep 17 00:00:00 2001 From: yuqianyuan Date: Sat, 14 Aug 2021 17:30:22 +0800 Subject: [PATCH 2/2] bug fix Signed-off-by: yuqianyuan --- services/devicemanagerservice/src/authdemo/hichain_adapter.cpp | 1 - 1 file changed, 1 deletion(-) diff --git a/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp b/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp index 6af501e71..2276c90e2 100644 --- a/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp +++ b/services/devicemanagerservice/src/authdemo/hichain_adapter.cpp @@ -379,7 +379,6 @@ char* HichainAuthCallBack::onBindRequest(int64_t requestId, int operationCode, c { HILOGI("HichainAuthCallBack::onBindRequest reqId:%{public}lld, operation:%{public}d.", requestId, operationCode); char * ret = HichainAdapter::GetInstance().OnBindRequest(requestId, operationCode, reqParams); - HILOGI("HichainAuthCallBack::onBindRequest %{public}s", ret); return ret; } } -- Gitee