keepassxc/src/streams
vuurvli3g 811887e591
Fix issues with reloading and handling of externally modified db file (#10612)
Fixes #5290 
Fixes #9062
Fixes #8545 

* Fix data loss on failed reload

- External modifications to the db file can no longer be missed.
- Fixed dialogFinished signal of DatabaseOpenDialog was not emitted when dialog was closed via the 'X' (close) button
- For reloading with a modified db, an additional choice has been added to allow the user to ignore the changes in the file on disk.
- User is now presented with an unlock database dialog if reload fails to open the db automatically. For example when the user removed the YubiKey, failed to touch the YubiKey within the timeout period, or db pw has been changed.
- Mark db as modified when db file is gone or invalid.
- Prevent saving when db is being reloaded
- If merge is triggered by a save action, continue on with the save action after the user makes their choice

---------

Co-authored-by: vuurvlieg <vuurvli3g@protonmail.com>
Co-authored-by: Jonathan White <support@dmapps.us>
2025-02-01 11:58:45 -05:00
..
HashedBlockStream.cpp clang-tidy: use auto 2022-05-01 16:02:02 -04:00
HashedBlockStream.h clang-tidy: use override 2022-05-01 16:01:31 -04:00
HashingStream.cpp Fix issues with reloading and handling of externally modified db file (#10612) 2025-02-01 11:58:45 -05:00
HashingStream.h Fix issues with reloading and handling of externally modified db file (#10612) 2025-02-01 11:58:45 -05:00
HmacBlockStream.cpp Optimize includes across code base 2021-07-13 22:08:33 -04:00
HmacBlockStream.h clang-tidy: use override 2022-05-01 16:01:31 -04:00
LayeredStream.cpp LayeredStream dtor: fully qualify 'close()' call 2018-12-01 14:07:10 -05:00
LayeredStream.h clang-tidy: use override 2022-05-01 16:01:31 -04:00
qtiocompressor.cpp Fix typo in parameter name 2018-11-28 18:29:14 -05:00
qtiocompressor.h clang-tidy: use override 2022-05-01 16:01:31 -04:00
StoreDataStream.cpp Restore correct formatting 2018-11-28 18:29:15 -05:00
StoreDataStream.h Restore correct formatting 2018-11-28 18:29:15 -05:00
SymmetricCipherStream.cpp Replace all crypto libraries with Botan 2021-04-05 22:56:03 -04:00
SymmetricCipherStream.h clang-tidy: use override 2022-05-01 16:01:31 -04:00