keepassium / KeePassium

KeePass-compatible password manager for iOS
https://keepassium.com
Other
1.18k stars 104 forks source link

[App] Local Database is shown twice #337

Closed akuropka closed 6 months ago

akuropka commented 8 months ago

Description My local databse is shown twice in the database overview.

How to reproduce Steps to reproduce the behavior:

  1. Add a database through iTunes File Sharing.
  2. Open app and load databse.
  3. Close app and reopen.

Expected behavior I only see the database once.

Actual behavior I see the database twice.

Environment:

Screenshots Screenshot 2024-01-23 at 16 38 36 Screenshot 2024-01-23 at 16 38 54 Screenshot 2024-01-23 at 16 39 11

keepassium commented 8 months ago

I've updated to 17.3, but cannot reproduce this… Following the suggested steps, I end up with a single file in "On My iPhone → KeePassium Pro → Local copy". Which is the expected result.

Based on your screenshots, it looks like you have the same database stored twice, in different folders of "On My iPhone". One file is directly in "KeePassium Pro". The other one is somewhere in "On My iPhone".

It looks like the "somewhere" file might be some leftover link from an earlier database version. What happens if you remove that database from KeePassium? (The confirmation dialog should say "Remove", not "Delete".)

akuropka commented 8 months ago

After removing I can access the database within the app and select entries in Safari but it cannot fill it in. Please see by yourself what happens... I think this is the best way to show: RPReplay_Final1706058888

keepassium commented 8 months ago

Thank you, Andreas. I can reproduce the issue.

After some analysis, the bug is courtesy of iOS 17.3 changing how app extensions (such as AutoFill) resolve file references created by the main app. I have filed it as #338. We'll see if it can be fixed, or we have to revert to the ancient times where AutoFill worked completely independently from the main app.

akuropka commented 8 months ago

I didn't keep track in detail of it but the issue exists already since some time. Maybe it is possible to combine both (best with one time opening only) and hide the other one in the overview. Thanks for your attention.

keepassium commented 8 months ago

I didn't keep track in detail of it but the issue exists already since some time.

Given the nature of the underlying issue (#338), I believe there will be many people affected soon. So chances are, it is indeed a 17.3 (or at least 17.2) "innovation".

Maybe it is possible to combine both (best with one time opening only) and hide the other one in the overview.

This would probably cause more confusion than it solves. A possible workaround is to move the database outside of "On My iPhone / KeePassium" and add it to both the app and AutoFill. Then there will be only one database listed.

akuropka commented 8 months ago

What I noted as well is that within the app „both“ databases can be accessed.

keepassium commented 6 months ago

The underlying issue (#338) was fixed in iOS 17.4. So if you remove the duplicate file(s), both the app and AutoFill should show local databases normally.

akuropka commented 6 months ago

Did a rough check and seems to work now.