From dd5fdc521aca9e758e4edda0b0a2d9c9ec6c9a86 Mon Sep 17 00:00:00 2001 From: Lamp Date: Mon, 21 Jan 2019 13:45:57 -0800 Subject: [PATCH] Revert "Fix race condition in name collector to close #14" This reverts commit bb3afc2bf687b2279633dad66792c908da04da6d. --- src/mppbridger/namecollector.js | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/src/mppbridger/namecollector.js b/src/mppbridger/namecollector.js index e51c71b..68632bd 100644 --- a/src/mppbridger/namecollector.js +++ b/src/mppbridger/namecollector.js @@ -1,15 +1,9 @@ var nameCollector = module.exports = { collection: mdbClient.db('heroku_jrtfvpd9').collection('ppl'), - buffer: [], - operationPending: false, collect: async function (participant) { if (config.testmode) return; - - if (this.operationPending) { this.buffer.push(participant); return } - this.operationPending = true; - if (participant.name == "Anonymous" || participant.name == "Anonymoose") return; - + var newMsg = function(continued){ var str = `__**${participant._id}**__${continued ? ' (continued)' : ''}\n${participant.name}`; return dClient.channels.get(config.channels.name_collection).send(str); @@ -21,25 +15,23 @@ var nameCollector = module.exports = { // update person if (document.names.includes(participant.name)) return; document.names.push(participant.name); - await this.collection.updateOne({_id: participant._id}, {$set:{names: document.names}}); + this.collection.updateOne({_id: participant._id}, {$set:{names: document.names}}); let message = await dClient.channels.get(config.channels.name_collection).messages.fetch(document.discord_msg_id); try { await message.edit(message.content + ', ' + participant.name); } catch(e) { let message = await newMsg(true); - await this.collection.updateOne({_id: participant._id}, {$set:{discord_msg_id: message.id}}); + this.collection.updateOne({_id: participant._id}, {$set:{discord_msg_id: message.id}}); } } else { // add new person let message = await newMsg(); - await nameCollector.collection.insertOne({ + nameCollector.collection.insertOne({ _id: participant._id, discord_msg_id: message.id, names: [participant.name] }); } - if (this.buffer.length) this.collect(this.buffer.shift()); - else this.operationPending = false; } } \ No newline at end of file