From b8564d5c24ffcf0c4537c3619b0e1c47d3b8072b Mon Sep 17 00:00:00 2001 From: Jonathan White Date: Sun, 29 Sep 2024 15:56:03 -0400 Subject: [PATCH] Handle alternative 1Pux password entry * Fixes #11298 --- src/format/OPUXReader.cpp | 3 +++ tests/TestImports.cpp | 5 +++++ tests/data/1PasswordExport.1pux | Bin 31621 -> 32079 bytes 3 files changed, 8 insertions(+) diff --git a/src/format/OPUXReader.cpp b/src/format/OPUXReader.cpp index ee5869b69..e1a0579cf 100644 --- a/src/format/OPUXReader.cpp +++ b/src/format/OPUXReader.cpp @@ -102,6 +102,9 @@ namespace entry->setPassword(fieldMap.value("value").toString()); } } + if (entry->password().isEmpty() && detailsMap.contains("password")) { + entry->setPassword(detailsMap.value("password").toString()); + } entry->setNotes(detailsMap.value("notesPlain").toString()); // Dive into the item sections to pull out advanced attributes diff --git a/tests/TestImports.cpp b/tests/TestImports.cpp index 84ef26cce..eb06599df 100644 --- a/tests/TestImports.cpp +++ b/tests/TestImports.cpp @@ -96,6 +96,11 @@ void TestImports::testOPUX() QVERIFY(entry); // Check custom group icon QVERIFY(!entry->group()->iconUuid().isNull()); + + // Check Category UUID 05 Passwords + entry = db->rootGroup()->findEntryByPath("/Personal/UUID 005 Password"); + QVERIFY(entry); + QCOMPARE(entry->password(), QStringLiteral("uuid005password")); } void TestImports::testOPVault() diff --git a/tests/data/1PasswordExport.1pux b/tests/data/1PasswordExport.1pux index 509d7d07b79726eb648ec263d1fbc9c46f58b529..12cfcb6c6b1ba042dfa5f85703f2af2d8d0c4be6 100644 GIT binary patch delta 4099 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 QurjbRL^Col+^Yuh0J-Sc&Hw-a delta 3619 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 XEyV*>!tmDdL*-<{S_w9hDv%HWNJiCN