summaryrefslogtreecommitdiff
path: root/indra/newview/llfloaterforgetuser.cpp
diff options
context:
space:
mode:
authorAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-09-18 21:17:53 +0300
committerAndrey Kleshchev <andreykproductengine@lindenlab.com>2023-09-18 21:17:53 +0300
commit1057880d2fc70fafce4053415a879372a8719b1e (patch)
treea595869ce830bff04809963b8168cece90e91bbf /indra/newview/llfloaterforgetuser.cpp
parent69a98a8465f910d58911456dfe840a7b829ccc65 (diff)
SL-20308 Clearing user's data should clear mfa
Diffstat (limited to 'indra/newview/llfloaterforgetuser.cpp')
-rw-r--r--indra/newview/llfloaterforgetuser.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/indra/newview/llfloaterforgetuser.cpp b/indra/newview/llfloaterforgetuser.cpp
index 05e0b07584..7f168df0c5 100644
--- a/indra/newview/llfloaterforgetuser.cpp
+++ b/indra/newview/llfloaterforgetuser.cpp
@@ -228,8 +228,13 @@ void LLFloaterForgetUser::processForgetUser()
void LLFloaterForgetUser::forgetUser(const std::string &userid, const std::string &fav_id, const std::string &grid, bool delete_data)
{
// Remove creds
- gSecAPIHandler->removeFromCredentialMap("login_list", grid, userid);
- gSecAPIHandler->removeFromProtectedMap("mfa_hash", grid, userid);
+ std::string grid_id = LLGridManager::getInstance()->getGridId(grid);
+ if (grid_id.empty())
+ {
+ grid_id = grid;
+ }
+ gSecAPIHandler->removeFromProtectedMap("mfa_hash", grid_id, userid); // doesn't write
+ gSecAPIHandler->removeFromCredentialMap("login_list", grid, userid); // write operation
LLPointer<LLCredential> cred = gSecAPIHandler->loadCredential(grid);
if (cred.notNull() && cred->userID() == userid)