Page MenuHome GnuPG

No OneTemporary

diff --git a/Makefile.am b/Makefile.am
index fb656555..91d34ac5 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -1,160 +1,159 @@
# Makefile.am - Installer for GnuPG 4 Windows Makefile.
# Copyright (C) 2005, 2008, 2012 g10 Code GmbH
#
# This file is part of GPG4Win.
#
# GPG4Win is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# GPG4Win is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, see <http://www.gnu.org/licenses/>.
ACLOCAL_AMFLAGS = -I m4
AUTOMAKE_OPTIONS = dist-xz no-dist-gzip
DISTCHECK_CONFIGURE_FLAGS = --host=i686-w64-mingw32
if BUILD_GPG4WIN
po = po
else
po =
endif
if BUILD_GPG4WIN
doc = doc
else
doc =
endif
SUBDIRS = ${po} packages ${doc} src
# find patches -type f | sort | sed 's/$/ \\/' | sed 's/^/ /'
# find patches-appimage -type f | sort | sed 's/$/ \\/' | sed 's/^/ /'
EXTRA_DIST = autogen.rc autogen.sh README.GIT ONEWS \
doc/license-page doc/GPLv3 \
build-aux/git-log-footer build-aux/git-log-fix \
build-aux/authenticode-sign.sh \
docker/appimage/Dockerfile \
docker/build-appimage-docker-image.sh \
docker/build-gpg4win-docker-image.sh \
docker/gpg4win-bullseye/Dockerfile \
docker/run-appimage-build.sh \
docker/run-gpg4win-build.sh \
patches/breeze-icons/0001-Add-folder-edit-sign-encrypt-icon.patch \
patches/breeze-icons/add-the-nose.patch \
patches/breeze-icons/azz-Make-all-breeze-icons-available-in-breeze-dark.patch \
patches/breeze-icons/subset-crossbuild.patch \
patches/extra-cmake-modules/0001-Use-BIN_INSTALL_DIR-data-for-DATAROOTDIR-on-Windows.patch \
patches/gpgme-1.24.2/0002-cpp-Validate-the-transition-map.patch \
patches/gpgme-1.24.2/0001-cpp-Ensure-that-all-transitions-go-from-one-state-to.patch \
patches/gpgme-1.24.2/0003-cpp-Add-missing-transition-remove-two-ignored.patch \
- patches/gpgol-2.6.0/0001-Revert-asString.patch \
- patches/gpgol-2.6.0/0002-Add-Disable-addr-book.patch \
+ patches/gpgol-2.6.0/0001-Fix-fixing-T6646.patch \
patches/jpeg/fix-redefine.patch \
patches/kconfig/0001-Read-defaults-from-Windows-registry.patch \
patches/kconfigwidgets/0001-Fix-crash-on-exit-on-Windows.patch \
patches/kconfigwidgets/0001-Make-QDbus-optional.patch \
patches/kcoreaddons/0001-Fix-MINGW-build.patch \
patches/kguiaddons/0001-DRAFT-There-is-no-dark-mode-on-old-Windows.patch \
patches/ki18n/0001-Undef-snprintf-for-windows.patch \
patches/kiconthemes/0001-Make-DBus-optional.patch \
patches/kiconthemes/dark-mode-detection.patch \
patches/kio/0001-WIP-Remove-dependency-to-dbus.patch \
patches/kio/FileManagerWindowJob.patch \
patches/kleopatra/set-windows-registry.patch \
patches/kparts/0001-Apply-implicit-android-DBUS-fix-for-Win.patch \
patches/kparts/disable-jobuidelegate.patch \
patches/kwidgetsaddons/0001-Set-the-modes-on-the-date-picker.patch \
patches/kwidgetsaddons/0002-Remove-No-date-option-from-date-picker-popup-used-by.patch \
patches/kwidgetsaddons/fix-height-of-text-after-update.patch \
patches/kxmlgui/0001-make-qdbus-optional.patch \
patches/kxmlgui/0002-stretch-aboutpage.patch \
patches/kxmlgui/0004-Cruedly-disable-KSendbugmail.patch \
patches/libical/workaround-weird-mingw-10.0.0-issue.patch \
patches/okular/0001-Add-GnuPG-specific-manifest-to-okular.patch \
patches/okular/0001-Add-support-to-customize-about-data.patch \
patches/okular/lower-cmake-requirement.patch \
patches/qtbase/0001-Gpg4win-qstandardpaths-patch.patch \
patches/qtbase/0002-Gpg4win-theme-names-and-relpaths.patch \
patches/qtbase/add-kleopatras-mime-types.patch \
patches/qtbase/CVE-2023-32763-qtbase-5.15.patch \
patches/qtbase/CVE-2023-37369-qtbase-5.15.patch \
patches/qtbase/CVE-2023-43114-5.15.patch \
patches/qtbase/fix-high-contrast-item-view-selection-color.patch \
patches/qtbase/fix-tooltip-text-color-with-dark-theme.patch \
patches/qtsvg/CVE-2023-32573-qtsvg-5.15.patch \
patches/qttools/disable-most-tools.patch \
patches/sonnet/0001-W32-Force-ispellchecker-for-sonnet.patch \
patches-appimage/gpgme-1.24.2/0002-cpp-Validate-the-transition-map.patch \
patches-appimage/gpgme-1.24.2/0001-cpp-Ensure-that-all-transitions-go-from-one-state-to.patch \
patches-appimage/gpgme-1.24.2/0003-cpp-Add-missing-transition-remove-two-ignored.patch \
patches-appimage/kwidgetsaddons/0001-Set-the-modes-on-the-date-picker.patch \
patches-appimage/kwidgetsaddons/0002-Remove-No-date-option-from-date-picker-popup-used-by.patch \
patches-appimage/kwidgetsaddons/fix-height-of-text-after-update.patch \
patches-appimage/okular/0001-Make-KF5Pty-dependency-optional.patch \
patches-appimage/okular/0001-Add-support-to-customize-about-data.patch \
patches-appimage/okular/lower-cmake-requirement.patch \
patches-appimage/poppler/fix-gpg-error-include.patch \
patches-appimage/qtbase/CVE-2023-32763-qtbase-5.15.patch \
patches-appimage/qtbase/CVE-2023-37369-qtbase-5.15.patch \
patches-appimage/qtbase/CVE-2023-43114-5.15.patch \
patches-appimage/qtbase/add-kleopatras-mime-types.patch \
patches-appimage/qtsvg/CVE-2023-32573-qtsvg-5.15.patch \
patches-appimage/qtwayland-5.15.0/00-disable-wayland-server.patch
copy-news:
cp NEWS doc/website/NEWS.last
copy-release: gpg4win-$(VERSION).tar.bz2 installers/gpg4win-$(VERSION).exe \
installers/gpg4win-light-$(VERSION).exe \
installers/gpg4win-vanilla-$(VERSION).exe
@echo Copying $(VERSION) to $(RELEASEHOST) >&2
@set -e;\
if ssh "$$(echo $(RELEASEHOST)|cut -d: -f -1)" \
test -f "$$(echo $(RELEASEHOST)/gpg4win-$(VERSION).exe|cut -d: -f2-)";\
then echo "This release has already been copied to the server" >&2 ;\
else scp gpg4win-$(VERSION).tar.bz2 \
installers/gpg4win-$(VERSION).exe \
installers/gpg4win-light-$(VERSION).exe \
installers/gpg4win-vanilla-$(VERSION).exe \
installers/gpg4win-src-$(VERSION).exe $(RELEASEHOST)/ ;\
for f in en de ; do \
scp src/README.$$f.txt \
$(RELEASEHOST)/README-$(VERSION).$$f.txt; \
done;\
fi
dist-hook: gen-ChangeLog
gen_start_date = 2012-03-26T00:00:00
.PHONY: gen-ChangeLog
gen-ChangeLog:
set -e; \
if test -d $(top_srcdir)/.git; then \
(cd $(top_srcdir) && \
$(GITLOG_TO_CHANGELOG) --append-dot --tear-off \
--amend=build-aux/git-log-fix \
--since=$(gen_start_date) ) > $(distdir)/cl-t; \
cat $(top_srcdir)/build-aux/git-log-footer >> $(distdir)/cl-t;\
rm -f $(distdir)/ChangeLog; \
mv $(distdir)/cl-t $(distdir)/ChangeLog; \
fi
download: packages/packages.common packages/packages.4 packages/packages.3
(cd packages; ./download.sh)
msi:
$(MAKE) $(AM_MAKEFLAGS) -C src msi
msi-signed:
$(MAKE) $(AM_MAKEFLAGS) -C src msi-signed
msi-upload:
$(MAKE) $(AM_MAKEFLAGS) -C src msi-upload
diff --git a/patches/gpgol-2.6.0/0001-Fix-fixing-T6646.patch b/patches/gpgol-2.6.0/0001-Fix-fixing-T6646.patch
new file mode 100644
index 00000000..01685d1d
--- /dev/null
+++ b/patches/gpgol-2.6.0/0001-Fix-fixing-T6646.patch
@@ -0,0 +1,46 @@
+#! /bin/sh
+patch -p1 -f $* < $0
+exit $?
+
+From 7b978c1ce250eeedae897a9a6a2b105b7ebd7f77 Mon Sep 17 00:00:00 2001
+From: Markus Montkowski <markus.montkowski@gnupg.com>
+Date: Fri, 25 Apr 2025 12:41:03 +0200
+Subject: [PATCH] Fix bug introduced fixing T6646 on April 9
+
+* ribbon-callback.cpp: get_mail_from_control fix accesing an
+empty vector
+--
+
+Calling front() on a vector where empty() is true is
+undefined. Code rearanged to prevent that.
+
+Fixes-commit: a95d340e478f8fb9529b49b0518a0fafa4d00bfe
+GnuPG-bug-id: 6646
+---
+ src/ribbon-callbacks.cpp | 7 +++++--
+ 1 file changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/src/ribbon-callbacks.cpp b/src/ribbon-callbacks.cpp
+index 06af440..32d5c87 100644
+--- a/src/ribbon-callbacks.cpp
++++ b/src/ribbon-callbacks.cpp
+@@ -556,13 +556,15 @@ get_mail_from_control (LPDISPATCH ctrl, bool *none_selected)
+ if (ret==NULL)
+ {
+ auto retV = Mail::searchMailsByUUID(uid);
+- if (retV.empty())
++ if (!retV.empty())
++ {
++ ret = retV.front();
++ }
++ else
+ {
+ log_error ("%s:%s: Failed to find mail %p in map.",
+ SRCNAME, __func__, mailitem);
+ }
+- ret = retV.front();
+ }
+ xfree (uid);
+
+--
+2.39.2
diff --git a/patches/gpgol-2.6.0/0001-Revert-asString.patch b/patches/gpgol-2.6.0/0001-Revert-asString.patch
deleted file mode 100644
index 6525bf43..00000000
--- a/patches/gpgol-2.6.0/0001-Revert-asString.patch
+++ /dev/null
@@ -1,293 +0,0 @@
-#! /bin/sh
-patch -p1 -f $* < $0
-exit $?
-
-From f8cf350a2263b42d622368f5a12c0cca229dbf66 Mon Sep 17 00:00:00 2001
-From: Werner Koch <wk@gnupg.org>
-Date: Fri, 25 Apr 2025 11:44:38 +0200
-Subject: [PATCH 1/2] Revert "Replace usage of deprecated Error::asString()"
-
---
-This reverts commit 623b0a478217824bba2a6ca61ba857c25c6d2758.
----
- src/addin-options.cpp | 2 +-
- src/addressbook.cpp | 2 +-
- src/common.cpp | 2 +-
- src/cryptcontroller.cpp | 15 +++++++--------
- src/keycache.cpp | 16 ++++++++--------
- src/mail.cpp | 8 ++++----
- src/parsecontroller.cpp | 2 +-
- src/wks-helper.cpp | 8 ++++----
- 8 files changed, 27 insertions(+), 28 deletions(-)
-
-diff --git a/src/addin-options.cpp b/src/addin-options.cpp
-index 5cae2a0..0283b99 100644
---- a/src/addin-options.cpp
-+++ b/src/addin-options.cpp
-@@ -277,7 +277,7 @@ open_gpgolconfig (LPVOID arg)
- if (err)
- {
- log_error ("%s:%s: Err code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- }
- dlg_open = false;
-
-diff --git a/src/addressbook.cpp b/src/addressbook.cpp
-index 7f08a73..8de852e 100644
---- a/src/addressbook.cpp
-+++ b/src/addressbook.cpp
-@@ -228,7 +228,7 @@ open_keyadder (LPVOID arg)
- if (err)
- {
- log_error ("%s:%s: Err code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- TRETURN 0;
- }
-
-diff --git a/src/common.cpp b/src/common.cpp
-index 4c1dbed..08a4317 100644
---- a/src/common.cpp
-+++ b/src/common.cpp
-@@ -1046,7 +1046,7 @@ in_de_vs_mode()
- if (err)
- {
- log_error ("%s:%s: Failed to get gpgconf components: %s",
-- SRCNAME, __func__, err.asStdString().c_str());
-+ SRCNAME, __func__, err.asString ());
- vs_mode = false;
- return vs_mode;
- }
-diff --git a/src/cryptcontroller.cpp b/src/cryptcontroller.cpp
-index f1a61bc..dff6c83 100644
---- a/src/cryptcontroller.cpp
-+++ b/src/cryptcontroller.cpp
-@@ -942,7 +942,7 @@ CryptController::resolve_keys ()
- if (err)
- {
- log_debug ("%s:%s: Resolver spawn finished Err code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- }
-
- int ret = parse_output (mystdout);
-@@ -1130,9 +1130,8 @@ CryptController::do_crypto (GpgME::Error &err, std::string &r_diag, bool force)
- if (err1 || err2)
- {
- log_error ("%s:%s: Encrypt / Sign error %s %s.",
-- SRCNAME, __func__,
-- result_pair.first.error().asStdString().c_str(),
-- result_pair.second.error().asStdString().c_str());
-+ SRCNAME, __func__, result_pair.first.error().asString(),
-+ result_pair.second.error().asString());
- err = err1 ? err1 : err2;
- GpgME::Data log;
- const auto err3 = ctx->getAuditLog (log,
-@@ -1161,7 +1160,7 @@ CryptController::do_crypto (GpgME::Error &err, std::string &r_diag, bool force)
- if (err)
- {
- log_error ("%s:%s: Signing error %s.",
-- SRCNAME, __func__, sigResult.error().asStdString().c_str());
-+ SRCNAME, __func__, sigResult.error().asString());
- GpgME::Data log;
- const auto err3 = ctx->getAuditLog (log,
- GpgME::Context::DiagnosticAuditLog);
-@@ -1210,7 +1209,7 @@ CryptController::do_crypto (GpgME::Error &err, std::string &r_diag, bool force)
- if (err)
- {
- log_error ("%s:%s: Encryption error %s.",
-- SRCNAME, __func__, err.asStdString().c_str());
-+ SRCNAME, __func__, err.asString());
- GpgME::Data log;
- const auto err3 = ctx->getAuditLog (log,
- GpgME::Context::DiagnosticAuditLog);
-@@ -1238,7 +1237,7 @@ CryptController::do_crypto (GpgME::Error &err, std::string &r_diag, bool force)
- if (err)
- {
- log_error ("%s:%s: Encryption error %s.",
-- SRCNAME, __func__, err.asStdString().c_str());
-+ SRCNAME, __func__, err.asString());
- GpgME::Data log;
- const auto err3 = ctx->getAuditLog (log,
- GpgME::Context::DiagnosticAuditLog);
-@@ -1264,7 +1263,7 @@ CryptController::do_crypto (GpgME::Error &err, std::string &r_diag, bool force)
- if (err)
- {
- log_error ("%s:%s: Signing error %s.",
-- SRCNAME, __func__, err.asStdString().c_str());
-+ SRCNAME, __func__, err.asString());
- GpgME::Data log;
- const auto err3 = ctx->getAuditLog (log,
- GpgME::Context::DiagnosticAuditLog);
-diff --git a/src/keycache.cpp b/src/keycache.cpp
-index 55e8efe..d098c02 100644
---- a/src/keycache.cpp
-+++ b/src/keycache.cpp
-@@ -175,7 +175,7 @@ do_update (LPVOID arg)
- {
- log_debug ("%s:%s Failed to find key for %s err: %s",
- SRCNAME, __func__, anonstr (args->first.c_str()),
-- err.asStdString().c_str());
-+ err.asString ());
- }
- KeyCache::instance ()->onUpdateJobDone (args->first.c_str(),
- newKey);
-@@ -233,7 +233,7 @@ do_import (LPVOID arg)
- if (import.error())
- {
- log_debug ("%s:%s Error importing: %s",
-- SRCNAME, __func__, import.error().asStdString().c_str());
-+ SRCNAME, __func__, import.error().asString());
- continue;
- }
- const char *fpr = import.fingerprint ();
-@@ -291,7 +291,7 @@ do_populate_protocol (GpgME::Protocol proto, bool secret)
- if ((err = ctx->startKeyListing ((const char*)nullptr, secret)))
- {
- log_error ("%s:%s: Failed to start keylisting err: %i: %s",
-- SRCNAME, __func__, err.code (), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code (), err.asString());
- TRETURN;
- }
-
-@@ -364,7 +364,7 @@ gpgsm_learn ()
- if (err)
- {
- log_debug ("%s:%s: gpgsm learn spawn code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- }
- if ((opt.enable_debug & DBG_DATA))
- {
-@@ -394,7 +394,7 @@ do_populate_smartcards (GpgME::Protocol proto)
- if (err)
- {
- log_dbg ("Failed to create assuan engine. %s",
-- err.asStdString().c_str());
-+ err.asString ());
- TRETURN;
- }
- const auto serials = gpgagent_transact (ctx, "scd serialno");
-@@ -1430,7 +1430,7 @@ get_extern_smime_keys (const std::string &addr, bool import)
- const GpgME::ImportResult res = ctx->importKeys(keys);
- log_debug ("%s:%s: Import result for %s: err: %s",
- SRCNAME, __func__, anonstr (addr.c_str()),
-- res.error ().asStdString().c_str());
-+ res.error ().asString ());
-
- }
-
-@@ -1850,7 +1850,7 @@ KeyCache::import_pgp_key_data (const GpgME::Data &data)
- std::stringstream ss;
- ss << result;
- log_debug ("%s:%s: Import result: %s details:\n %s",
-- SRCNAME, __func__, result.error ().asStdString().c_str(),
-+ SRCNAME, __func__, result.error ().asString (),
- ss.str().c_str());
- if (result.error())
- {
-@@ -1870,7 +1870,7 @@ KeyCache::import_pgp_key_data (const GpgME::Data &data)
- else
- {
- log_debug ("%s:%s: Import result: %s",
-- SRCNAME, __func__, result.error ().asStdString().c_str());
-+ SRCNAME, __func__, result.error ().asString ());
- }
- TRETURN !result.error();
- }
-diff --git a/src/mail.cpp b/src/mail.cpp
-index f3865e7..c0dc051 100644
---- a/src/mail.cpp
-+++ b/src/mail.cpp
-@@ -1176,7 +1176,7 @@ do_crypt (LPVOID arg)
- {
- char *buf = nullptr;
- gpgrt_asprintf (&buf, _("Crypto operation failed:\n%s"),
-- err.asStdString().c_str());
-+ err.asString());
- std::string msg = buf;
- memdbg_alloc (buf);
- xfree (buf);
-@@ -1221,7 +1221,7 @@ do_crypt (LPVOID arg)
- {
- char *buf = nullptr;
- gpgrt_asprintf (&buf, _("Crypto operation failed:\n%s"),
-- err.asStdString().c_str());
-+ err.asString());
- std::string msg = buf;
- memdbg_alloc (buf);
- xfree (buf);
-@@ -3667,7 +3667,7 @@ Mail::getCryptoDetails_o ()
- message += "\n\n";
- message += _("The message was signed but the verification failed with:");
- message += "\n";
-- message += m_verify_result.error().asStdString();
-+ message += m_verify_result.error().asString();
- TRETURN message;
- }
- /* No crypo, what are we doing here? */
-@@ -3820,7 +3820,7 @@ Mail::getCryptoDetails_o ()
- const auto err = m_sig.status ();
- if (err)
- {
-- message += err.asStdString() + std::string ("\n");
-+ message += err.asString () + std::string ("\n");
- }
- }
- else if (m_sig.summary() & Signature::Summary::SigExpired)
-diff --git a/src/parsecontroller.cpp b/src/parsecontroller.cpp
-index 9961802..3a31c2a 100644
---- a/src/parsecontroller.cpp
-+++ b/src/parsecontroller.cpp
-@@ -262,7 +262,7 @@ format_error(GpgME::DecryptionResult result, Protocol protocol)
- }
- else
- {
-- msg += result.error().asStdString();
-+ msg += result.error().asString();
- }
- }
-
-diff --git a/src/wks-helper.cpp b/src/wks-helper.cpp
-index c7de080..fe7c55c 100644
---- a/src/wks-helper.cpp
-+++ b/src/wks-helper.cpp
-@@ -189,7 +189,7 @@ check_published (const std::string &mbox)
- if (err)
- {
- log_debug ("%s:%s: WKS client spawn code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- return false;
- }
- auto data = mystdout.toString ();
-@@ -239,7 +239,7 @@ do_check (LPVOID arg)
- if (err)
- {
- log_debug ("%s:%s: WKS client spawn code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- return 0;
- }
-
-@@ -498,7 +498,7 @@ WKSHelper::start_publish (const std::string &mbox) const
- if (err)
- {
- log_debug ("%s:%s: WKS client spawn code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- return;
- }
- const auto data = mystdout.toString ();
-@@ -756,7 +756,7 @@ WKSHelper::handle_confirmation_notify (const std::string &mbox) const
- if (err)
- {
- log_debug ("%s:%s: WKS client spawn code: %i asString: %s",
-- SRCNAME, __func__, err.code(), err.asStdString().c_str());
-+ SRCNAME, __func__, err.code(), err.asString());
- return;
- }
- const auto data = mystdout.toString ();
---
-2.39.2
diff --git a/patches/gpgol-2.6.0/0002-Add-Disable-addr-book.patch b/patches/gpgol-2.6.0/0002-Add-Disable-addr-book.patch
deleted file mode 100644
index 5ae0863b..00000000
--- a/patches/gpgol-2.6.0/0002-Add-Disable-addr-book.patch
+++ /dev/null
@@ -1,116 +0,0 @@
-#! /bin/sh
-patch -p1 -f $* < $0
-exit $?
-
-From f6cc1369ff2d00896ab4d9cdd6028d15b39c99c6 Mon Sep 17 00:00:00 2001
-From: Markus Montkowski <markus.montkowski@gnupg.com>
-Date: Thu, 24 Apr 2025 16:43:14 +0200
-Subject: [PATCH 2/2] Add Disable addr book check workaround
-
-* common_indep.h: Add disableAddressBookSupport to opts
-* main.c: set new disableAddressBookSupport from regisitry
-* oomhelp.cpp: log value returned from oom_get_int
-* ribbon_callbacks.cpp: return false from
- get_is_addr_book_enabled if new option is set
----
- src/common_indep.h | 1 +
- src/main.c | 1 +
- src/oomhelp.cpp | 2 +-
- src/ribbon-callbacks.cpp | 17 ++++++++++++-----
- 4 files changed, 15 insertions(+), 6 deletions(-)
-
-diff --git a/src/common_indep.h b/src/common_indep.h
-index 023c121..2d06349 100644
---- a/src/common_indep.h
-+++ b/src/common_indep.h
-@@ -244,6 +244,7 @@ struct opt_s
- int forms_revision; /* The forms revision number of the
- binary. */
-
-+ int disableAddressBookSupport; /*Disable addressbook ribon button check*/
- };
- extern struct opt_s opt;
-
-diff --git a/src/main.c b/src/main.c
-index 52effe8..b3b3ffe 100644
---- a/src/main.c
-+++ b/src/main.c
-@@ -269,6 +269,7 @@ read_options (void)
- opt.closeOnUnknownWriteEvent = get_conf_bool ("closeOnUnknownWriteEvent", 0);
- opt.disable_titus_handling = get_conf_bool("disableTitusHandling", 0);
- opt.dont_autodecrypt_preview = get_conf_bool("disableAutoPreview",0);
-+ opt.disableAddressBookSupport = get_conf_bool("disableAddressBookSupport",0);
-
- if (!opt.automation)
- {
-diff --git a/src/oomhelp.cpp b/src/oomhelp.cpp
-index ceaf652..9d01a3c 100644
---- a/src/oomhelp.cpp
-+++ b/src/oomhelp.cpp
-@@ -804,7 +804,7 @@ get_oom_int (LPDISPATCH pDisp, const char *name)
- result = rVariant.intVal;
- VariantClear (&rVariant);
- }
--
-+ log_debug ("%s:%s: value=%d", SRCNAME, __func__, result);
- TRETURN result;
- }
-
-diff --git a/src/ribbon-callbacks.cpp b/src/ribbon-callbacks.cpp
-index 06af440..47ce3e7 100644
---- a/src/ribbon-callbacks.cpp
-+++ b/src/ribbon-callbacks.cpp
-@@ -611,13 +611,20 @@ HRESULT get_is_details_enabled (LPDISPATCH ctrl, VARIANT *result)
-
- HRESULT get_is_addr_book_enabled (LPDISPATCH ctrl, VARIANT *result)
- {
-+ TSTART;
- if (!ctrl)
- {
- log_error ("%s:%s:%i", SRCNAME, __func__, __LINE__);
-- return E_FAIL;
-+ TRETURN E_FAIL;
- }
- result->vt = VT_BOOL | VT_BYREF;
- result->pboolVal = &var_false;
-+ if (opt.disableAddressBookSupport)
-+ {
-+ log_dbg ("Skip addressbook check");
-+ TRETURN S_OK;
-+ }
-+
- LPDISPATCH context = nullptr;
- HRESULT hr = getContext (ctrl, &context);
-
-@@ -625,7 +632,7 @@ HRESULT get_is_addr_book_enabled (LPDISPATCH ctrl, VARIANT *result)
- {
- log_error ("%s:%s:%i :Failed to get context hresult %lx",
- SRCNAME, __func__, __LINE__, hr);
-- return S_OK;
-+ TRETURN S_OK;
- }
- auto selection = get_oom_object_s (context, "Selection");
- gpgol_release (context);
-@@ -633,7 +640,7 @@ HRESULT get_is_addr_book_enabled (LPDISPATCH ctrl, VARIANT *result)
- {
- log_error ("%s:%s: Failed to get selection.",
- SRCNAME, __func__);
-- return S_OK;
-+ TRETURN S_OK;
- }
- int count = get_oom_int (selection, "Count");
- if (count == 1)
-@@ -646,9 +653,9 @@ HRESULT get_is_addr_book_enabled (LPDISPATCH ctrl, VARIANT *result)
- log_dbg ("One contact selected");
- }
-
-- return S_OK;
-+ TRETURN S_OK;
- }
-- return S_OK;
-+ TRETURN S_OK;
- }
-
- HRESULT get_sig_label (LPDISPATCH ctrl, VARIANT *result)
---
-2.39.2

File Metadata

Mime Type
text/x-diff
Expires
Thu, Mar 19, 6:04 PM (18 h, 53 m)
Storage Engine
local-disk
Storage Format
Raw Data
Storage Handle
96/ec/28e1bc30bd152e17b1e3eaa90dc8

Event Timeline