diff --git a/lib/Client/InternalClient.js b/lib/Client/InternalClient.js index c170286e2..202db12a3 100644 --- a/lib/Client/InternalClient.js +++ b/lib/Client/InternalClient.js @@ -1180,7 +1180,9 @@ var InternalClient = (function () { return Promise.reject(new Error("Role does not exist on same server as member")); } - var roleIDs = roles[0].server.memberMap[member.id].roles; + var roleIDs = roles[0].server.memberMap[member.id].roles.map(function (r) { + return r && r.id || r; + }); for (var i = 0; i < roles.length; i++) { if (! ~roleIDs.indexOf(roles[i].id)) { @@ -1252,7 +1254,9 @@ var InternalClient = (function () { }); } - var roleIDs = roles[0].server.memberMap[member.id].roles; + var roleIDs = roles[0].server.memberMap[member.id].roles.map(function (r) { + return r && r.id || r; + }); for (var _iterator7 = roles, _isArray7 = Array.isArray(_iterator7), _i7 = 0, _iterator7 = _isArray7 ? _iterator7 : _iterator7[Symbol.iterator]();;) { var _ref7; diff --git a/src/Client/InternalClient.js b/src/Client/InternalClient.js index 2e4cf9954..011c1b04e 100644 --- a/src/Client/InternalClient.js +++ b/src/Client/InternalClient.js @@ -978,7 +978,7 @@ export default class InternalClient { return Promise.reject(new Error("Role does not exist on same server as member")); } - var roleIDs = roles[0].server.memberMap[member.id].roles; + var roleIDs = roles[0].server.memberMap[member.id].roles.map(r => (r && r.id) || r); for (var i = 0; i < roles.length; i++) { if (!~roleIDs.indexOf(roles[i].id)) { @@ -1037,7 +1037,7 @@ export default class InternalClient { roles = roles.map(r => this.resolver.resolveRole(r)); } - var roleIDs = roles[0].server.memberMap[member.id].roles; + var roleIDs = roles[0].server.memberMap[member.id].roles.map(r => (r && r.id) || r); for (var role of roles) { if (!role.server.memberMap[member.id]) {