Fix #1168 (.hasPermission)

This commit is contained in:
Amish Shah
2017-02-04 20:58:39 +00:00
parent 59ff1d99ba
commit 26becb570b

View File

@@ -64,10 +64,12 @@ class GuildChannel extends Channel {
for (const role of roles.values()) permissions |= role.permissions; for (const role of roles.values()) permissions |= role.permissions;
const overwrites = this.overwritesFor(member, true, roles); const overwrites = this.overwritesFor(member, true, roles);
let allow = 0;
for (const overwrite of overwrites.role.concat(overwrites.member)) { for (const overwrite of overwrites.role.concat(overwrites.member)) {
permissions &= ~overwrite.deny; permissions &= ~overwrite.deny;
permissions |= overwrite.allow; allow |= overwrite.allow;
} }
permissions |= allow;
const admin = Boolean(permissions & Constants.PermissionFlags.ADMINISTRATOR); const admin = Boolean(permissions & Constants.PermissionFlags.ADMINISTRATOR);
if (admin) permissions = Constants.ALL_PERMISSIONS; if (admin) permissions = Constants.ALL_PERMISSIONS;