diff options
| author | Brad Linden <brad@lindenlab.com> | 2023-08-23 12:26:14 -0700 |
|---|---|---|
| committer | Brad Linden <brad@lindenlab.com> | 2023-08-23 12:26:14 -0700 |
| commit | c6d5f11f63dfa0ac65a2afebf88b3078f571e044 (patch) | |
| tree | 63fd8081ce450fd426ea717adc04d09b0da4b713 /indra/newview/llimprocessing.cpp | |
| parent | ef33902f220df35727ba54ee8bc3ed02bc53d6be (diff) | |
| parent | d454512050e636a19e4b7545515dea4f4b1bbf0d (diff) | |
Merge remote-tracking branch 'origin/main' into DRTVWR-559
Diffstat (limited to 'indra/newview/llimprocessing.cpp')
| -rw-r--r-- | indra/newview/llimprocessing.cpp | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/indra/newview/llimprocessing.cpp b/indra/newview/llimprocessing.cpp index 3536b83989..948793681d 100644 --- a/indra/newview/llimprocessing.cpp +++ b/indra/newview/llimprocessing.cpp @@ -1631,14 +1631,19 @@ void LLIMProcessing::requestOfflineMessagesCoro(std::string url) from_group = message_data["from_group"].asString() == "Y"; } - + EInstantMessage dialog = static_cast<EInstantMessage>(message_data["dialog"].asInteger()); + LLUUID session_id = message_data["transaction-id"].asUUID(); + if (session_id.isNull() && dialog == IM_FROM_TASK) + { + session_id = message_data["asset_id"].asUUID(); + } LLIMProcessing::processNewMessage( message_data["from_agent_id"].asUUID(), from_group, message_data["to_agent_id"].asUUID(), message_data.has("offline") ? static_cast<U8>(message_data["offline"].asInteger()) : IM_OFFLINE, - static_cast<EInstantMessage>(message_data["dialog"].asInteger()), - message_data["transaction-id"].asUUID(), + dialog, + session_id, static_cast<U32>(message_data["timestamp"].asInteger()), message_data["from_agent_name"].asString(), message_data["message"].asString(), |
