From 2c5d52b0be8659770600c459a1323e20e027e597 Mon Sep 17 00:00:00 2001 From: varjolintu Date: Sat, 17 Sep 2022 10:32:52 +0300 Subject: [PATCH] Hide duplicate TOTP entry --- keepassxc-browser/content/keepassxc-browser.js | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/keepassxc-browser/content/keepassxc-browser.js b/keepassxc-browser/content/keepassxc-browser.js index dd3a76e..d331d16 100755 --- a/keepassxc-browser/content/keepassxc-browser.js +++ b/keepassxc-browser/content/keepassxc-browser.js @@ -388,6 +388,14 @@ kpxc.initLoginPopup = function() { const loginItems = []; for (let i = 0; i < kpxc.credentials.length; i++) { const loginItem = getLoginItem(kpxc.credentials[i], showGroupNameInAutocomplete, i); + + // Ignore a duplicate entry if the password is empty, but there's already a similar entry with a password. + // An usual use case with TOTP in a separate database. + const similarEntryFound = kpxc.credentials.some(c => c.password !== '' && c.login === loginItem.login); + if (kpxc.credentials[i].password === '' && similarEntryFound) { + continue; + } + loginItems.push(loginItem); }