From 420979e63ec4fe3f6b392b25863fd1443d1bb767 Mon Sep 17 00:00:00 2001 From: Sosthene Date: Mon, 25 Aug 2025 01:30:58 +0200 Subject: [PATCH] [bug] Prevent duplicated addresses when sharing secrets --- src/services/service.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/services/service.ts b/src/services/service.ts index 1a911d0..9193f81 100755 --- a/src/services/service.ts +++ b/src/services/service.ts @@ -211,7 +211,7 @@ export default class Services { public async checkConnections(members: Member[]): Promise { // Ensure the amount is available before proceeding await this.getTokensFromFaucet(); - let unconnectedAddresses = []; + let unconnectedAddresses: Set = new Set(); const myAddress = this.getDeviceAddress(); for (const member of members) { const sp_addresses = member.sp_addresses; @@ -221,12 +221,12 @@ export default class Services { if (address === myAddress) continue; const sharedSecret = await this.getSecretForAddress(address); if (!sharedSecret) { - unconnectedAddresses.push(address); + unconnectedAddresses.add(address); } } } - if (unconnectedAddresses && unconnectedAddresses.length != 0) { - const apiResult = await this.connectAddresses(unconnectedAddresses); + if (unconnectedAddresses && unconnectedAddresses.size != 0) { + const apiResult = await this.connectAddresses([...unconnectedAddresses]); await this.handleApiReturn(apiResult); } }