diff --git a/lib/Client.js b/lib/Client.js index 1d426fc74..9f2a26913 100644 --- a/lib/Client.js +++ b/lib/Client.js @@ -879,10 +879,6 @@ var Client = (function () { var data; if (role instanceof ServerPermissions || role.type === "role") { - for (var key in updatedStuff) { - role[key] = updatedStuff[key]; - } - data = ad(updatedStuff); data.id = role.id; data.type = "role"; diff --git a/lib/Member.js b/lib/Member.js index f19b68e4d..7227e08e7 100644 --- a/lib/Member.js +++ b/lib/Member.js @@ -134,6 +134,7 @@ var Member = (function (_User) { //cache roles as it can be slightly expensive basePerm = basePerms[0].packed; + basePerms = basePerms || []; for (var _iterator5 = basePerms, _isArray5 = Array.isArray(_iterator5), _i5 = 0, _iterator5 = _isArray5 ? _iterator5 : _iterator5[Symbol.iterator]();;) { var _ref5; diff --git a/src/Client.js b/src/Client.js index ee8810c2e..4134e30d5 100644 --- a/src/Client.js +++ b/src/Client.js @@ -954,10 +954,6 @@ class Client { var data; if( role instanceof ServerPermissions || role.type === "role" ){ - for(var key in updatedStuff){ - role[key] = updatedStuff[key]; - } - data = ad(updatedStuff); data.id = role.id; data.type = "role"; diff --git a/src/Member.js b/src/Member.js index 63429b973..4ab8ad56e 100644 --- a/src/Member.js +++ b/src/Member.js @@ -25,7 +25,8 @@ class Member extends User{ get evalPerms(){ var basePerms = this.roles, //cache roles as it can be slightly expensive basePerm = basePerms[0].packed; - + + basePerms = basePerms || []; for(var perm of basePerms){ basePerm = basePerm | perm.packed; } diff --git a/test/bot.1.js b/test/bot.1.js index c3e13af5f..722656d26 100644 --- a/test/bot.1.js +++ b/test/bot.1.js @@ -25,16 +25,21 @@ mybot.on("message", function (message) { } else { user = message.sender; } - - this.createRole( message.channel.server, { - hoist : true, - color : true, - manageRoles : true, - name : "discord users" - } ).then( + + this.createRole(message.channel.server, { + hoist: true, + color: true, + name: "discord users" + }).then( (perm) => { - - mybot.addMemberToRole( user, perm ); + + mybot.addMemberToRole(user, perm).then( + () => { + mybot.overwritePermissions(message.channel, perm, { + sendMessages : false + }); + } + ) } )