Fixed race
This commit is contained in:
@@ -48,6 +48,9 @@ namespace Auth
|
|||||||
{
|
{
|
||||||
auto transaction{ session.createWriteTransaction() };
|
auto transaction{ session.createWriteTransaction() };
|
||||||
|
|
||||||
|
user = User::find(session, loginName);
|
||||||
|
if (!user)
|
||||||
|
{
|
||||||
const UserType type{ User::getCount(session) == 0 ? UserType::ADMIN : UserType::REGULAR };
|
const UserType type{ User::getCount(session) == 0 ? UserType::ADMIN : UserType::REGULAR };
|
||||||
|
|
||||||
LMS_LOG(AUTH, DEBUG, "Creating user '" << loginName << "', admin = " << (type == UserType::ADMIN));
|
LMS_LOG(AUTH, DEBUG, "Creating user '" << loginName << "', admin = " << (type == UserType::ADMIN));
|
||||||
@@ -55,6 +58,7 @@ namespace Auth
|
|||||||
user = session.create<User>(loginName);
|
user = session.create<User>(loginName);
|
||||||
user.modify()->setType(type);
|
user.modify()->setType(type);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return user->getId();
|
return user->getId();
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user