diff --git a/services/src/peruser_session.cpp b/services/src/peruser_session.cpp index 5eaa877ec0f95db3c459cbd534485cb4e10c6867..0544175ffb9d5c722335fc42cd1bf3c9a97fa01a 100644 --- a/services/src/peruser_session.cpp +++ b/services/src/peruser_session.cpp @@ -2152,12 +2152,13 @@ int32_t PerUserSession::SpecialSendPrivateData(const std::unordered_mapimeExtendInfo.privateCommand = privateCommand; if (imeData == nullptr) { auto ret = StartIme(defaultIme, true); if (ret != ErrorCode::NO_ERROR) { IMSA_HILOGE("notify start ime failed, ret: %{public}d!", ret); } - return ErrorCode::ERROR_IMSA_DEFAULT_IME_NOT_FOUND; + return ret; } if (defaultIme->bundleName == imeData->ime.first) { auto ret = SendPrivateData(privateCommand); @@ -2166,7 +2167,6 @@ int32_t PerUserSession::SpecialSendPrivateData(const std::unordered_mapimeExtendInfo.privateCommand = privateCommand; auto ret = StartIme(defaultIme); if (ret != ErrorCode::NO_ERROR) { IMSA_HILOGE("notify start ime failed, ret: %{public}d!", ret); @@ -2186,12 +2186,13 @@ int32_t PerUserSession::SendPrivateData(const std::unordered_mapcore->OnSendPrivateData(value); }); - if (ret != ErrorCode::NO_ERROR) { - IMSA_HILOGE("notify send private data failed, ret: %{public}d!", ret); - } if (!data->imeExtendInfo.privateCommand.empty()) { data->imeExtendInfo.privateCommand.clear(); } + if (ret != ErrorCode::NO_ERROR) { + IMSA_HILOGE("notify send private data failed, ret: %{public}d!", ret); + return ret; + } IMSA_HILOGI("notify send private data success."); return ret; }