From 53b30ffaf5c2d584d758c01dbae07bc00d7f814e Mon Sep 17 00:00:00 2001 From: George Hazan Date: Wed, 29 Mar 2023 17:47:55 +0300 Subject: roles should be restored in the reversed order --- src/mir_app/src/chat_tools.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/mir_app/src/chat_tools.cpp b/src/mir_app/src/chat_tools.cpp index a263cbc35f..5e5c164597 100644 --- a/src/mir_app/src/chat_tools.cpp +++ b/src/mir_app/src/chat_tools.cpp @@ -911,8 +911,9 @@ bool Chat_Unserialize(SESSION_INFO *si) if (!str.IsEmpty()) si->ptszTopic = str.Detach(); - for (auto &it : root["roles"]) - if (auto *pStatus = TM_AddStatus(&si->pStatuses, it["name"].as_mstring(), &si->iStatusCount)) + auto &pRoles = root["roles"]; + for (auto it = pRoles.rbegin(); it != pRoles.rend(); ++it) + if (auto *pStatus = TM_AddStatus(&si->pStatuses, (*it)["name"].as_mstring(), &si->iStatusCount)) si->iStatusCount++; for (auto &it : root["users"]) { -- cgit v1.2.3