From 65b93532ceba800b63bb1baba1e356b7c5dec430 Mon Sep 17 00:00:00 2001 From: Schuyler Cebulskie Date: Sat, 24 Sep 2016 00:51:31 -0400 Subject: [PATCH] Add additional shard count checks --- src/sharding/ShardingManager.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/sharding/ShardingManager.js b/src/sharding/ShardingManager.js index 5a7bb713a..ec96b57f2 100644 --- a/src/sharding/ShardingManager.js +++ b/src/sharding/ShardingManager.js @@ -79,8 +79,14 @@ class ShardingManager extends EventEmitter { if (amount !== Math.floor(amount)) throw new RangeError('Amount of shards must be an integer.'); return new Promise(resolve => { + if (this.shards.size >= amount) throw new Error(`Already spawned ${this.shards.size} shards.`); this.totalShards = amount; + this.createShard(); + if (this.shards.size >= this.totalShards) { + resolve(this.shards); + return; + } if (delay <= 0) { while (this.shards.size < this.totalShards) this.createShard();