Locks bug failing test (#9595)

* test: failing test for issue

* fix: #9593, don't lock if email is identical to username

* fix: lock calls after first call

* fix: add back email check

* test: remove invalid test

Co-authored-by: Julian Lam <julian@nodebb.org>
v1.18.x
Barış Soner Uşaklı 4 years ago committed by GitHub
parent 9f74caf65c
commit ca72aa93d7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -19,14 +19,14 @@ module.exports = function (User) {
data.email = String(data.email).trim();
}
try {
await lock(data.username, '[[error:username-taken]]');
if (data.email) {
await lock(data.email, '[[error:email-taken]]');
}
await User.isDataValid(data);
await User.isDataValid(data);
await lock(data.username, '[[error:username-taken]]');
if (data.email && data.email !== data.username) {
await lock(data.email, '[[error:email-taken]]');
}
try {
return await create(data);
} finally {
await db.deleteObjectFields('locks', [data.username, data.email]);

Loading…
Cancel
Save