diff options
author | George Hazan <ghazan@miranda.im> | 2023-03-29 17:47:55 +0300 |
---|---|---|
committer | George Hazan <ghazan@miranda.im> | 2023-03-29 17:47:55 +0300 |
commit | 53b30ffaf5c2d584d758c01dbae07bc00d7f814e (patch) | |
tree | b451151089e30dc94ea33c2467878367dbc9b18c | |
parent | 2a2f15ef946aab0ca453ee10bd44746ffa7e6294 (diff) |
roles should be restored in the reversed order
-rw-r--r-- | src/mir_app/src/chat_tools.cpp | 5 |
1 files changed, 3 insertions, 2 deletions
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"]) {
|