Do not delete MacPasteboard instance on exit, resolves #1543 #1607
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description
Removes deletion of the MacPasteboard instance on exit, working around a crash due to a Qt bug. Resolves #1543.
Regression was introduced in 806248e
Motivation and context
QMacPasteboardMime subclasses are registered and de-registered using ctors/dtors, but after deleting an instance, Qt keeps a dangling pointer, which it tries to delete again on program exit (https://bugreports.qt.io/browse/QTBUG-54832).
Since our MacPasteboard instance lives for the whole program duration, anyway, it's no big loss to simply not delete it and let Qt or, at the latest, the OS take care of it.
How has this been tested?
KeePassXC doesn't crash anymore when opening and locking a database and then exiting the program with Cmd+Q.
Types of changes
Checklist:
-DWITH_ASAN=ON
. [REQUIRED]