diff --git a/services/devicemanagerservice/src/ipc/lite/ipc_server_stub.cpp b/services/devicemanagerservice/src/ipc/lite/ipc_server_stub.cpp index 1cb044337f0a9fd37d5e9b333e8352fb62f7ff4d..77a5b5efa33a7b99c95a8ca6bb753179629d85db 100644 --- a/services/devicemanagerservice/src/ipc/lite/ipc_server_stub.cpp +++ b/services/devicemanagerservice/src/ipc/lite/ipc_server_stub.cpp @@ -129,14 +129,13 @@ int32_t UnRegisterDeviceManagerListener(IpcIo *req, IpcIo *reply) DMLOG(DM_LOG_ERROR, "get para failed"); return DEVICEMANAGER_FAILED; } - + CommonSvcId svcId; + if (IpcServerListenermgr::GetInstance().GetListenerByPkgName(pkgName, &svcId) != DEVICEMANAGER_OK) { + DMLOG(DM_LOG_ERROR, "not found listener by package name."); + return DEVICEMANAGER_FAILED; + } int32_t ret = IpcServerListenermgr::GetInstance().UnregisterListener(pkgName); if (ret == DEVICEMANAGER_OK) { - CommonSvcId svcId; - if (IpcServerListenermgr::GetInstance().GetListenerByPkgName(pkgName, &svcId) != DEVICEMANAGER_OK) { - DMLOG(DM_LOG_ERROR, "not found listener by package name."); - return DEVICEMANAGER_FAILED; - } #ifdef __LINUX__ BinderRelease(svcId.ipcCtx, svcId.handle); #endif diff --git a/services/devicemanagerservice/src/ipc/standard/ipc_cmd_parser.cpp b/services/devicemanagerservice/src/ipc/standard/ipc_cmd_parser.cpp index 875202361e1440b92fea0d971b0c4cbbe6f3210c..c6bc39322d136967229548afec32ebbffcca1f8c 100644 --- a/services/devicemanagerservice/src/ipc/standard/ipc_cmd_parser.cpp +++ b/services/devicemanagerservice/src/ipc/standard/ipc_cmd_parser.cpp @@ -264,12 +264,10 @@ ON_IPC_CMD(AUTHENTICATE_DEVICE, MessageParcel &data, MessageParcel &reply) int32_t appThumbnailLen = data.ReadInt32(); uint8_t *appIcon = appIconLen > 0? (uint8_t *)data.ReadRawData(appIconLen) : nullptr; uint8_t *appThumbnail = appThumbnailLen > 0? (uint8_t *)data.ReadRawData(appThumbnailLen) : nullptr; - int32_t result = DEVICEMANAGER_NULLPTR; - if (appIcon != nullptr && appThumbnail != nullptr) { - DmAppImageInfo imageInfo(appIcon, appIconLen, appThumbnail, appThumbnailLen); - result = IpcServerAdapter::GetInstance().AuthenticateDevice(pkgName, *deviceInfo, imageInfo, extra); - } + DmAppImageInfo imageInfo(appIcon, appIconLen, appThumbnail, appThumbnailLen); + int32_t result = IpcServerAdapter::GetInstance().AuthenticateDevice(pkgName, *deviceInfo, imageInfo, extra); + if (!reply.WriteInt32(result)) { DMLOG(DM_LOG_ERROR, "write result failed"); return DEVICEMANAGER_WRITE_FAILED;