Skip to content

Commit 1f7427b

Browse files
letscodedanishlindapaiste
authored andcommitted
Fixed Passport handles expected errors as exceptions
1 parent a9e518c commit 1f7427b

File tree

1 file changed

+10
-12
lines changed

1 file changed

+10
-12
lines changed

server/config/passport.js

+10-12
Original file line numberDiff line numberDiff line change
@@ -123,12 +123,12 @@ passport.use(
123123
User.findOne({ github: profile.id }, (findByGithubErr, existingUser) => {
124124
if (existingUser) {
125125
if (req.user && req.user.email !== existingUser.email) {
126-
done(
127-
new Error('GitHub account is already linked to another account.')
128-
);
126+
done(null, false, {
127+
msg: 'GitHub account is already linked to another account.'
128+
});
129129
return;
130130
} else if (existingUser.banned) {
131-
done(new Error(accountSuspensionMessage));
131+
done(null, false, { msg: accountSuspensionMessage });
132132
return;
133133
}
134134
done(null, existingUser);
@@ -159,7 +159,7 @@ passport.use(
159159
[existingEmailUser] = existingEmailUsers;
160160
}
161161
if (existingEmailUser.banned) {
162-
done(new Error(accountSuspensionMessage));
162+
done(null, false, { msg: accountSuspensionMessage });
163163
return;
164164
}
165165
existingEmailUser.email = existingEmailUser.email || primaryEmail;
@@ -218,14 +218,12 @@ passport.use(
218218
(findByGoogleErr, existingUser) => {
219219
if (existingUser) {
220220
if (req.user && req.user.email !== existingUser.email) {
221-
done(
222-
new Error(
223-
'Google account is already linked to another account.'
224-
)
225-
);
221+
done(null, false, {
222+
msg: 'Google account is already linked to another account.'
223+
});
226224
return;
227225
} else if (existingUser.banned) {
228-
done(new Error(accountSuspensionMessage));
226+
done(null, false, { msg: accountSuspensionMessage });
229227
return;
230228
}
231229
done(null, existingUser);
@@ -256,7 +254,7 @@ passport.use(
256254
// then, append a random friendly word?
257255
if (existingEmailUser) {
258256
if (existingEmailUser.banned) {
259-
done(new Error(accountSuspensionMessage));
257+
done(null, false, { msg: accountSuspensionMessage });
260258
return;
261259
}
262260
existingEmailUser.email =

0 commit comments

Comments
 (0)