Kunzisoft / KeePassDX

Lightweight vault and password manager for Android, KeePassDX allows editing encrypted data in a single file in KeePass format and fill in the forms in a secure way.
https://www.keepassdx.com/
GNU General Public License v3.0
4.55k stars 269 forks source link

Off-by-one when selecting date fields #1695

Open brendanny opened 10 months ago

brendanny commented 10 months ago

Describe the bug

When selecting a date for input in a field, the date saved is one less than the date picked in the selector.

To Reproduce

Steps to reproduce the behavior:

  1. Ensure your timezone is set to UTC-1 or less
  2. Open database in KeePassDX
  3. Add entry
  4. Change template from standard to one that has a date field (ID or credit/debit card)
  5. Scroll down to a date field.
  6. Click the date field
  7. Pick a date
  8. Observe that the date in field is not the date that was picked

Expected behavior

The date picked with the selector should be the date saved. Might also be an Android bug with the date selector trying to handle full date & times instead of just the date. (i.e. date selector is selecting 2023-12-20T00:00Z for 20 December 2023 which is translated as 19 December 2023 if your timezone is negative offset)

KeePass Database N/A

KeePassDX:

Android:

Additional context N/A