From fb023b02be53b47a0b5b837001fc7b08dd7f3bd1 Mon Sep 17 00:00:00 2001 From: Overtorment Date: Thu, 14 Apr 2022 12:36:33 +0100 Subject: [PATCH] FIX: race condition for address generation --- class/User.js | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/class/User.js b/class/User.js index a4f8e86..6f964af 100644 --- a/class/User.js +++ b/class/User.js @@ -119,6 +119,12 @@ export class User { return new Promise(function (resolve, reject) { self._lightning.newAddress({ type: 0 }, async function (err, response) { if (err) return reject('LND failure when trying to generate new address'); + const addressAlreadyExists = await self.getAddress(); + if (addressAlreadyExists) { + // one last final check, for a case of really long race condition + resolve(); + return; + } await self.addAddress(response.address); if (config.bitcoind) self._bitcoindrpc.request('importaddress', [response.address, response.address, false]); resolve();