<pre style='margin:0'>
Christopher Nielsen (mascguy) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/c74bed9b59a072b5ef3958aee0ccc81d7f154e82">https://github.com/macports/macports-ports/commit/c74bed9b59a072b5ef3958aee0ccc81d7f154e82</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new c74bed9b59a KeePassXC: upgrade to 2.7.1
</span>c74bed9b59a is described below

<span style='display:block; white-space:pre;color:#808000;'>commit c74bed9b59a072b5ef3958aee0ccc81d7f154e82
</span>Author: tenzap <fabstz-it@yahoo.fr>
AuthorDate: Thu Apr 7 09:21:32 2022 +0200

<span style='display:block; white-space:pre;color:#404040;'>    KeePassXC: upgrade to 2.7.1
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    - upgrade to 2.7.1
</span><span style='display:block; white-space:pre;color:#404040;'>    - remove patches that were merged upstream
</span><span style='display:block; white-space:pre;color:#404040;'>    - update patch-touch-id.diff patch
</span><span style='display:block; white-space:pre;color:#404040;'>    - upgrade also KeePassXC-devel
</span><span style='display:block; white-space:pre;color:#404040;'>    - add versioned openssl to license_noconflict
</span>---
 security/KeePassXC/Portfile                        | 28 +++++------
 .../KeePassXC/files/patch-minizip-include.diff     | 56 ----------------------
 security/KeePassXC/files/patch-qt56-qoverload.diff | 26 ----------
 security/KeePassXC/files/patch-touch-id.diff       | 54 ++++++++++-----------
 4 files changed, 37 insertions(+), 127 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/Portfile b/security/KeePassXC/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index d89bc66729b..80765b479fb 100755
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/KeePassXC/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -28,12 +28,12 @@ long_description        KeePassXC is a community fork of KeePassX with the \
</span>                         cross-platform and modern open-source password manager.
 platforms               darwin
 license                 GPL-2+
<span style='display:block; white-space:pre;background:#ffe0e0;'>-license_noconflict      openssl
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license_noconflict      openssl openssl10 openssl11 openssl3
</span> 
 if {${subport} eq ${name}} {
     # stable
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    github.setup        keepassxreboot keepassxc 2.7.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    revision            2
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    github.setup        keepassxreboot keepassxc 2.7.1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    revision            0
</span>     github.tarball_from releases
     distname            keepassxc-${version}-src
     use_xz              yes
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -43,12 +43,12 @@ if {${subport} eq ${name}} {
</span> 
     # See keepassxc-${version}-src.tar.xz.DIGEST on upstream GitHub releases page for SHA256 sums
     checksums           ${distname}${extract.suffix} \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        rmd160  fcf7ffbe37c127f24d4e16f6534fa0c3ef4dd1fd \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256  83be76890904cd6703343fa097d68bcfdd99bb525cf518fa62a7df9293026aa7 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        size    8846780 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        rmd160  e5adf2843c99391f5fdd150caee4cdc4254ab155 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  6001ba626c35c316dbda6de35736f012a2264f95139fcb4a094b8eb49b15d3e7 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    8804436 \
</span>                         ${distname}${extract.suffix}.sig \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        rmd160  b6e7541eb6556f0dd2b8c826a704570a185aeca1 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256  031c60741148076a9ec0d6b67d31a608c0e7639215a4291a2a107bd961b38e73 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        rmd160  8faa589c6d808630d38a0da0ad0fe2c69aab070b \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  197a206c10a0c51e9e50aef7a245cc6a99955d928ac3dfb549998953a614bf04 \
</span>                         size    488
 
     gpg_verify.use_gpg_verification \
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -56,16 +56,16 @@ if {${subport} eq ${name}} {
</span> 
 } else {
     # devel subport
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    github.setup        keepassxreboot keepassxc 4178e72fe04eb97d0787c006b03993c87baa26c3
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    github.setup        keepassxreboot keepassxc 5916a8f8dd93eb6a5de544caedd7a9d8e9a3b1ee
</span>     set githash         [string range ${github.version} 0 6]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    version             20220323+git${githash}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    version             20220406+git${githash}
</span>     revision            0
 
     conflicts           KeePassXC
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    checksums           rmd160  f330d85018a430b54e3e5aca93baba8722ab18e5 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        sha256  04011a97e0f25ccc5cfe12608a61e01174f8102017661add361636a01b619c44 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        size    11205362
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    checksums           rmd160  a2c24f7f12b19baaf47a4f25399f33bee6cefe13 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        sha256  5193db2c656bdbb29605df573057e23316e4572327d616b6ac052e857cf4af73 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                        size    11171009
</span> 
     gpg_verify.use_gpg_verification \
                         no
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -103,8 +103,6 @@ depends_lib-append      port:argon2 \
</span> 
 patchfiles              patch-no-deployqt.diff \
                         patch-no-findpackage-path.diff \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-qt56-qoverload.diff \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                        patch-minizip-include.diff \
</span>                         patch-touch-id.diff
 
 # KeePassXC uses -fstack-protector-strong on Clang [1]. That flag is not
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/files/patch-minizip-include.diff b/security/KeePassXC/files/patch-minizip-include.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 34dfce57264..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/files/patch-minizip-include.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,56 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From 31db3c325d2ffc9dedc240d8ac5036fe6f1cf5c3 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-From: Jonathan White <support@dmapps.us>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date: Thu, 24 Mar 2022 22:53:02 -0400
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Subject: [PATCH] Fix compiling with minizip-ng
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-* minizip-ng has slightly different defines and function names than the original minizip. These changes adapt the existing code to use the minizip-ng versions if necessary.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>----
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/keeshare/CMakeLists.txt  | 1 -
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/keeshare/ShareExport.cpp | 9 ++++++++-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- src/keeshare/ShareImport.cpp | 2 +-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3 files changed, 9 insertions(+), 3 deletions(-)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/keeshare/CMakeLists.txt b/src/keeshare/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 9fcc55dc28..a108b784b8 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/keeshare/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/keeshare/CMakeLists.txt
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -17,6 +17,5 @@ if(WITH_XC_KEESHARE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     add_library(keeshare STATIC ${keeshare_SOURCES})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     target_link_libraries(keeshare PUBLIC Qt5::Core Qt5::Widgets ${BOTAN2_LIBRARIES} ${ZLIB_LIBRARIES} PRIVATE ${MINIZIP_LIBRARIES})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--    target_include_directories(keeshare SYSTEM PRIVATE ${MINIZIP_INCLUDE_DIR})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- endif(WITH_XC_KEESHARE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/keeshare/ShareExport.cpp b/src/keeshare/ShareExport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index a457033af7..d43ef73cb3 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/keeshare/ShareExport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/keeshare/ShareExport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -27,7 +27,14 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <QBuffer>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <botan/pubkey.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <zip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <minizip/zip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+// Compatibility with minizip-ng
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifdef MZ_VERSION_BUILD
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#undef Z_BEST_COMPRESSION
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define Z_BEST_COMPRESSION MZ_COMPRESS_LEVEL_BEST
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define zipOpenNewFileInZip64 zipOpenNewFileInZip_64
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- namespace
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/keeshare/ShareImport.cpp b/src/keeshare/ShareImport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index 123486456e..eb93912e76 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/keeshare/ShareImport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/keeshare/ShareImport.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -21,7 +21,7 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include "keys/PasswordKey.h"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- #include <QBuffer>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--#include <unzip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#include <minizip/unzip.h>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- namespace
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/files/patch-qt56-qoverload.diff b/security/KeePassXC/files/patch-qt56-qoverload.diff
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0212d22540c..00000000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/files/patch-qt56-qoverload.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,26 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-commit f7391d904999138158d9bca9e7c34ef18550e2fe
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Author: tenzap <fabstz-it@yahoo.fr>
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Date:   Sat Mar 26 11:23:32 2022 +0100
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    fix compilation of TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    qOverload appeared with qt5.7
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    Reported error:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-    keepassxc-2.7.0-src/src/gui/tag/TagsEdit.cpp:414:34: error: use of undeclared identifier 'qOverload'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-            connect(completer.get(), qOverload<QString const&>(&QCompleter::activated), [this](QString const& text) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                                     ^
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-diff --git a/src/gui/tag/TagsEdit.cpp b/src/gui/tag/TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-index b4bfb7f..a347940 100644
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- src/gui/tag/TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ src/gui/tag/TagsEdit.cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -411,7 +411,7 @@ struct TagsEdit::Impl
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     void setupCompleter()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         completer->setWidget(ifce);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--        connect(completer.get(), qOverload<QString const&>(&QCompleter::activated), [this](QString const& text) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+        connect(completer.get(), static_cast<void (QCompleter::*)(QString const&)>(&QCompleter::activated), [this](QString const& text) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-             currentText(text);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         });
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/security/KeePassXC/files/patch-touch-id.diff b/security/KeePassXC/files/patch-touch-id.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 86b3c1ae1dd..c4df5f8173d 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/security/KeePassXC/files/patch-touch-id.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/security/KeePassXC/files/patch-touch-id.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,16 +1,14 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-commit 1e927a3ae50211f9bcff54858d04fc4474bfe13d
</span> Author: tenzap <fabstz-it@yahoo.fr>
<span style='display:block; white-space:pre;background:#ffe0e0;'>-Date:   Sat Mar 26 10:44:33 2022 +0100
</span> 
     restore WITH_XC_TOUCHID configure option
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     To be able to compile on macOS versions that don't support TouchID and related APIs
 
 diff --git a/CMakeLists.txt b/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index baa399d..a685ff0 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index db732d67..40a1c95e 100644
</span> --- CMakeLists.txt
 +++ CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -59,6 +59,9 @@ option(WITH_XC_UPDATECHECK "Include automatic update checks; disable for control
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -60,6 +60,9 @@ option(WITH_XC_UPDATECHECK "Include automatic update checks; disable for control
</span>  if(UNIX AND NOT APPLE)
      option(WITH_XC_FDOSECRETS "Implement freedesktop.org Secret Storage Spec server side API." OFF)
  endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -20,7 +18,7 @@ index baa399d..a685ff0 100644
</span>  option(WITH_XC_DOCS "Enable building of documentation" ON)
  
  if(WITH_CCACHE)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -82,6 +85,9 @@ if(WITH_XC_ALL)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -83,6 +86,9 @@ if(WITH_XC_ALL)
</span>      if(UNIX AND NOT APPLE)
          set(WITH_XC_FDOSECRETS ON)
      endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -31,10 +29,10 @@ index baa399d..a685ff0 100644
</span>  
  # Prefer WITH_XC_NETWORKING setting over WITH_XC_UPDATECHECK
 diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 38d162e..d46a163 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c4f66e71..b35bfc18 100644
</span> --- src/CMakeLists.txt
 +++ src/CMakeLists.txt
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -240,6 +240,9 @@ add_feature_info(UpdateCheck WITH_XC_UPDATECHECK "Automatic update checking")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -239,6 +239,9 @@ add_feature_info(UpdateCheck WITH_XC_UPDATECHECK "Automatic update checking")
</span>  if(UNIX AND NOT APPLE)
      add_feature_info(FdoSecrets WITH_XC_FDOSECRETS "Implement freedesktop.org Secret Storage Spec server side API.")
  endif()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -44,7 +42,7 @@ index 38d162e..d46a163 100644
</span>  
  add_subdirectory(browser)
  add_subdirectory(proxy)
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -351,10 +354,13 @@ if(WITH_XC_KEESHARE)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -350,10 +353,13 @@ if(WITH_XC_KEESHARE)
</span>  endif()
  
  if(APPLE)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -60,7 +58,7 @@ index 38d162e..d46a163 100644
</span>  if(HAIKU)
      target_link_libraries(keepassx_core network)
 diff --git a/src/config-keepassx.h.cmake b/src/config-keepassx.h.cmake
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 6b855c6..da94bba 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6caa89d8..5ba60860 100644
</span> --- src/config-keepassx.h.cmake
 +++ src/config-keepassx.h.cmake
 @@ -19,6 +19,7 @@
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -72,7 +70,7 @@ index 6b855c6..da94bba 100644
</span>  #cmakedefine WITH_XC_DOCS
  
 diff --git a/src/gui/DatabaseOpenWidget.cpp b/src/gui/DatabaseOpenWidget.cpp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index bfa4af1..2e7ebf4 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d5c9707f..3de214a2 100644
</span> --- src/gui/DatabaseOpenWidget.cpp
 +++ src/gui/DatabaseOpenWidget.cpp
 @@ -59,7 +59,7 @@ namespace
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -84,7 +82,7 @@ index bfa4af1..2e7ebf4 100644
</span>              return TouchID::getInstance().containsKey(filename);
  #endif
          }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -279,7 +279,7 @@ void DatabaseOpenWidget::openDatabase()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -280,7 +280,7 @@ void DatabaseOpenWidget::openDatabase()
</span>  #if defined(Q_CC_MSVC)
              // Store the password using Windows Hello
              getWindowsHello()->storeKey(m_filename, keyData);
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -93,7 +91,7 @@ index bfa4af1..2e7ebf4 100644
</span>              // Store the password using TouchID
              TouchID::getInstance().storeKey(m_filename, keyData);
  #endif
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -336,7 +336,7 @@ QSharedPointer<CompositeKey> DatabaseOpenWidget::buildDatabaseKey()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -337,7 +337,7 @@ QSharedPointer<CompositeKey> DatabaseOpenWidget::buildDatabaseKey()
</span>              m_ui->messageWidget->showMessage(tr("Failed to authenticate with Windows Hello"), MessageWidget::Error);
              return {};
          }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -102,8 +100,8 @@ index bfa4af1..2e7ebf4 100644
</span>          if (!TouchID::getInstance().getKey(m_filename, keyData)) {
              // Failed to retrieve Quick Unlock data
              m_ui->messageWidget->showMessage(tr("Failed to authenticate with Touch ID"), MessageWidget::Error);
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -532,7 +532,7 @@ void DatabaseOpenWidget::resetQuickUnlock()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -541,7 +541,7 @@ void DatabaseOpenWidget::resetQuickUnlock()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     }
</span>  #if defined(Q_CC_MSVC)
      getWindowsHello()->reset(m_filename);
 -#elif defined(Q_OS_MACOS)
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -112,7 +110,7 @@ index bfa4af1..2e7ebf4 100644
</span>  #endif
      load(m_filename);
 diff --git a/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp b/src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 2dae5cb..e5c5cff 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 2dae5cbb..e5c5cff9 100644
</span> --- src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp
 +++ src/gui/dbsettings/DatabaseSettingsWidgetDatabaseKey.cpp
 @@ -200,7 +200,7 @@ bool DatabaseSettingsWidgetDatabaseKey::save()
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -125,7 +123,7 @@ index 2dae5cb..e5c5cff 100644
</span>  #elif defined(Q_CC_MSVC)
      getWindowsHello()->reset(m_db->filePath());
 diff --git a/src/touchid/TouchID.mm b/src/touchid/TouchID.mm
<span style='display:block; white-space:pre;background:#ffe0e0;'>-index 236711e..668a41b 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e7539262..c6d127ce 100644
</span> --- src/touchid/TouchID.mm
 +++ src/touchid/TouchID.mm
 @@ -1,7 +1,9 @@
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -146,7 +144,7 @@ index 236711e..668a41b 100644
</span>  
  /**
   * Singleton
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -35,6 +38,7 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -35,6 +38,7 @@ TouchID& TouchID::getInstance()
</span>      return instance;
  }
  
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -154,7 +152,7 @@ index 236711e..668a41b 100644
</span>  /**
   * Generates a random AES 256bit key and uses it to encrypt the PasswordKey that
   * protects the database. The encrypted PasswordKey is kept in memory while the
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -230,12 +234,16 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -232,13 +236,14 @@ bool TouchID::containsKey(const QString& dbPath) const
</span>  {
      return m_encryptedMasterKeys.contains(dbPath);
  }
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -165,24 +163,20 @@ index 236711e..668a41b 100644
</span>   */
  bool TouchID::isAvailable()
  {
<span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifndef WITH_XC_TOUCHID
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+  return false;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#else
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if MAC_OS_X_VERSION_MIN_REQUIRED < 101201
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if MAC_OS_X_VERSION_MIN_REQUIRED < 101201 || !defined(WITH_XC_TOUCHID)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   return false;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #else
</span>      // cache result
<span style='display:block; white-space:pre;background:#ffe0e0;'>-     if (this->m_available != TOUCHID_UNDEFINED) {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         return (this->m_available == TOUCHID_AVAILABLE);
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -264,8 +272,10 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         this->m_available = TOUCHID_NOT_AVAILABLE;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-         return false;
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-     }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif //defined(WITH_XC_TOUCHID)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -272,6 +277,7 @@ bool TouchID::isAvailable()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span>  }
  
 +#ifdef WITH_XC_TOUCHID
  typedef enum
  {
      kTouchIDResultNone,
<span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -329,3 +339,4 @@ inline QString hash(const QString& value)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -337,3 +343,4 @@ void TouchID::reset(const QString& databasePath)
</span>  
      this->m_encryptedMasterKeys.remove(databasePath);
  }
</pre><pre style='margin:0'>

</pre>