From ec1e59ba98bf80ac04d14194a4e04717ebe21c2d Mon Sep 17 00:00:00 2001 From: varjolintu Date: Sun, 2 Feb 2020 21:43:53 +0200 Subject: [PATCH] Remove duplicate entries --- keepassxc-browser/background/keepass.js | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/keepassxc-browser/background/keepass.js b/keepassxc-browser/background/keepass.js index 2d63558..b7042fb 100755 --- a/keepassxc-browser/background/keepass.js +++ b/keepassxc-browser/background/keepass.js @@ -255,7 +255,7 @@ keepass.retrieveCredentials = async function(tab, args = []) { keepass.setcurrentKeePassXCVersion(parsed.version); if (keepass.verifyResponse(parsed, incrementedNonce)) { - entries = parsed.entries; + entries = removeDuplicateEntries(parsed.entries); keepass.updateLastUsed(keepass.databaseHash); if (entries.length === 0) { // Questionmark-icon is not triggered, so we have to trigger for the normal symbol @@ -1214,3 +1214,17 @@ keepass.buildRequest = function(action, encrypted, nonce, clientID, triggerUnloc keepass.getIsKeePassXCAvailable = async function() { return keepass.isKeePassXCAvailable; }; + +const removeDuplicateEntries = function(arr) { + const newArray = []; + + for (const a of arr) { + if (newArray.some(i => i.uuid === a.uuid)) { + continue; + } + + newArray.push(a); + } + + return newArray; +};