summaryrefslogtreecommitdiff
path: root/net-libs/signond/files
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2022-06-29 12:04:12 +0100
committerV3n3RiX <venerix@koprulu.sector>2022-06-29 12:04:12 +0100
commit0f558761aa2dee1017b4751e4017205e015a9560 (patch)
tree037df795519468a25d9362b4e95cdaeb84eb1cf9 /net-libs/signond/files
parent752d6256e5204b958b0ef7905675a940b5e9172f (diff)
gentoo resync : 29.12.2022
Diffstat (limited to 'net-libs/signond/files')
-rw-r--r--net-libs/signond/files/signond-8.60-crashfix.patch160
-rw-r--r--net-libs/signond/files/signond-8.60-drop-fno-rtti.patch123
2 files changed, 0 insertions, 283 deletions
diff --git a/net-libs/signond/files/signond-8.60-crashfix.patch b/net-libs/signond/files/signond-8.60-crashfix.patch
deleted file mode 100644
index 8cfc79ac431e..000000000000
--- a/net-libs/signond/files/signond-8.60-crashfix.patch
+++ /dev/null
@@ -1,160 +0,0 @@
-From ab9fab9763277783363f8c6d4b62405c3b0b0413 Mon Sep 17 00:00:00 2001
-From: Chris Adams <chris.adams@jollamobile.com>
-Date: Wed, 31 Jul 2019 12:45:14 +1000
-Subject: [PATCH] Don't emit QObject::destroyed() within Identity::destroy()
-
-QObject::destroyed() should not be emitted manually, as that can
-cause unwanted side effects.
-
-Specifically, in this case, the
-QDBusConnectionPrivate::objectDestroyed() slot was invoked with
-invalidated object parameter (perhaps due to duplicate invocation)
-resulting in a warning in QObject::disconnect().
-
-Instead, ensure the object is unregistered from DBus immediately.
----
- src/signond/signondaemonadaptor.cpp | 29 ++++++++++++++++++++++++++++-
- src/signond/signondaemonadaptor.h | 3 +++
- src/signond/signonidentity.cpp | 13 ++++++++-----
- src/signond/signonidentity.h | 1 +
- 4 files changed, 40 insertions(+), 6 deletions(-)
-
-diff --git a/src/signond/signondaemonadaptor.cpp b/src/signond/signondaemonadaptor.cpp
-index 8b35e4bd..abd8fd3a 100644
---- a/src/signond/signondaemonadaptor.cpp
-+++ b/src/signond/signondaemonadaptor.cpp
-@@ -29,6 +29,13 @@
-
- namespace SignonDaemonNS {
-
-+struct RegisteredIdentity {
-+ RegisteredIdentity(const QDBusConnection &connection, QObject *identity)
-+ : conn(connection), ident(identity) {}
-+ QDBusConnection conn;
-+ QObject *ident = nullptr;
-+};
-+
- SignonDaemonAdaptor::SignonDaemonAdaptor(SignonDaemon *parent):
- QDBusAbstractAdaptor(parent),
- m_parent(parent)
-@@ -38,6 +45,7 @@ SignonDaemonAdaptor::SignonDaemonAdaptor(SignonDaemon *parent):
-
- SignonDaemonAdaptor::~SignonDaemonAdaptor()
- {
-+ qDeleteAll(m_registeredIdentities);
- }
-
- void SignonDaemonAdaptor::registerNewIdentity(const QString &applicationContext,
-@@ -46,7 +54,10 @@ void SignonDaemonAdaptor::registerNewIdentity(const QString &applicationContext,
- Q_UNUSED(applicationContext);
-
- QObject *identity = m_parent->registerNewIdentity();
-- objectPath = registerObject(parentDBusContext().connection(), identity);
-+ QDBusConnection dbusConnection(parentDBusContext().connection());
-+ objectPath = registerObject(dbusConnection, identity);
-+ m_registeredIdentities.append(new RegisteredIdentity(dbusConnection, identity));
-+ connect(identity, SIGNAL(unregistered()), this, SLOT(onIdentityUnregistered()));
-
- SignonDisposable::destroyUnused();
- }
-@@ -130,6 +141,22 @@ void SignonDaemonAdaptor::getIdentity(const quint32 id,
- SignonDisposable::destroyUnused();
- }
-
-+void SignonDaemonAdaptor::onIdentityUnregistered()
-+{
-+ QObject *ident = sender();
-+ if (!ident) {
-+ return;
-+ }
-+
-+ for (int i = 0; i < m_registeredIdentities.size(); ++i) {
-+ if (m_registeredIdentities[i]->ident == ident) {
-+ m_registeredIdentities[i]->conn.unregisterObject(ident->objectName());
-+ delete m_registeredIdentities.takeAt(i);
-+ return;
-+ }
-+ }
-+}
-+
- void SignonDaemonAdaptor::onIdentityAccessReplyFinished()
- {
- SignOn::AccessReply *reply = qobject_cast<SignOn::AccessReply*>(sender());
-diff --git a/src/signond/signondaemonadaptor.h b/src/signond/signondaemonadaptor.h
-index db8d875f..1c20cac3 100644
---- a/src/signond/signondaemonadaptor.h
-+++ b/src/signond/signondaemonadaptor.h
-@@ -34,6 +34,7 @@
- namespace SignonDaemonNS {
-
- typedef QList<QVariantMap> MapList;
-+class RegisteredIdentity;
-
- class SignonDaemonAdaptor: public QDBusAbstractAdaptor
- {
-@@ -74,10 +75,12 @@ private:
- QObject *object);
-
- private Q_SLOTS:
-+ void onIdentityUnregistered();
- void onIdentityAccessReplyFinished();
- void onAuthSessionAccessReplyFinished();
-
- private:
-+ QList<RegisteredIdentity*> m_registeredIdentities;
- SignonDaemon *m_parent;
- }; //class SignonDaemonAdaptor
-
-diff --git a/src/signond/signonidentity.cpp b/src/signond/signonidentity.cpp
-index ce1ecfb0..a143c223 100644
---- a/src/signond/signonidentity.cpp
-+++ b/src/signond/signonidentity.cpp
-@@ -84,7 +84,8 @@ private:
- SignonIdentity::SignonIdentity(quint32 id, int timeout,
- SignonDaemon *parent):
- SignonDisposable(timeout, parent),
-- m_pInfo(NULL)
-+ m_pInfo(NULL),
-+ m_destroyed(false)
- {
- m_id = id;
-
-@@ -112,7 +113,10 @@ SignonIdentity::SignonIdentity(quint32 id, int timeout,
-
- SignonIdentity::~SignonIdentity()
- {
-- emit unregistered();
-+ if (!m_destroyed) {
-+ m_destroyed = true;
-+ Q_EMIT unregistered();
-+ }
-
- delete m_signonui;
- delete m_pInfo;
-@@ -125,9 +129,8 @@ SignonIdentity *SignonIdentity::createIdentity(quint32 id, SignonDaemon *parent)
-
- void SignonIdentity::destroy()
- {
-- /* Emitting the destroyed signal makes QDBusConnection unregister the
-- * object */
-- Q_EMIT destroyed();
-+ m_destroyed = true;
-+ Q_EMIT unregistered();
- deleteLater();
- }
-
-diff --git a/src/signond/signonidentity.h b/src/signond/signonidentity.h
-index 9ec9be4e..f6321f30 100644
---- a/src/signond/signonidentity.h
-+++ b/src/signond/signonidentity.h
-@@ -96,6 +96,7 @@ private:
- quint32 m_id;
- SignonUiAdaptor *m_signonui;
- SignonIdentityInfo *m_pInfo;
-+ bool m_destroyed;
- }; //class SignonDaemon
-
- } //namespace SignonDaemonNS
---
-2.26.2
-
diff --git a/net-libs/signond/files/signond-8.60-drop-fno-rtti.patch b/net-libs/signond/files/signond-8.60-drop-fno-rtti.patch
deleted file mode 100644
index 175d88361c43..000000000000
--- a/net-libs/signond/files/signond-8.60-drop-fno-rtti.patch
+++ /dev/null
@@ -1,123 +0,0 @@
-From e21867fa27e32f5391d73d145eef1c8d908dee44 Mon Sep 17 00:00:00 2001
-From: Fabian Vogt <fabian@ritter-vogt.de>
-Date: Thu, 18 Jun 2020 10:22:04 +0200
-Subject: [PATCH] Don't use -fno-rtti
-
-QProcess uses typeid and crashes otherwise.
----
- common-project-config.pri | 2 --
- src/extensions/cryptsetup/cryptsetup.pro | 1 -
- src/plugins/plugins.pri | 3 +--
- src/remotepluginprocess/remotepluginprocess.pro | 3 +--
- tests/extensions/extensions.pri | 3 +--
- tests/libsignon-qt-tests/libsignon-qt-tests.pro | 3 +--
- tests/passwordplugintest/passwordplugintest.pro | 3 +--
- tests/signond-tests/signond-tests.pri | 3 +--
- 8 files changed, 6 insertions(+), 15 deletions(-)
-
-diff --git a/common-project-config.pri b/common-project-config.pri
-index 606f70bb..abe6cf6d 100644
---- a/common-project-config.pri
-+++ b/common-project-config.pri
-@@ -13,8 +13,6 @@ RCC_DIR = resources
-
- # we don't like warnings...
- QMAKE_CXXFLAGS -= -Werror -Wno-write-strings
--# Disable RTTI
--QMAKE_CXXFLAGS += -fno-rtti
- # Disable exceptions
- CONFIG += exceptions_off
- # Use C++11
-diff --git a/src/extensions/cryptsetup/cryptsetup.pro b/src/extensions/cryptsetup/cryptsetup.pro
-index f4b6e53b..5cc214e4 100644
---- a/src/extensions/cryptsetup/cryptsetup.pro
-+++ b/src/extensions/cryptsetup/cryptsetup.pro
-@@ -29,7 +29,6 @@ QT -= gui
-
- QMAKE_CXXFLAGS += \
- -fno-exceptions \
-- -fno-rtti \
- -fvisibility=hidden
-
- DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII
-diff --git a/src/plugins/plugins.pri b/src/plugins/plugins.pri
-index 2c03e743..074896d5 100644
---- a/src/plugins/plugins.pri
-+++ b/src/plugins/plugins.pri
-@@ -22,8 +22,7 @@ LIBS += -lsignon-plugins
- QMAKE_LIBDIR += \
- $${TOP_BUILD_DIR}/lib/plugins
-
--QMAKE_CXXFLAGS += -fno-exceptions \
-- -fno-rtti
-+QMAKE_CXXFLAGS += -fno-exceptions
-
- headers.path = $${INSTALL_PREFIX}/include/signon-plugins
-
-diff --git a/src/remotepluginprocess/remotepluginprocess.pro b/src/remotepluginprocess/remotepluginprocess.pro
-index 7c2ea007..36b4cbe0 100644
---- a/src/remotepluginprocess/remotepluginprocess.pro
-+++ b/src/remotepluginprocess/remotepluginprocess.pro
-@@ -40,8 +40,7 @@ LIBS += \
- -lsignon-plugins-common \
- -lsignon-plugins
-
--QMAKE_CXXFLAGS += -fno-exceptions \
-- -fno-rtti
-+QMAKE_CXXFLAGS += -fno-exceptions
-
- #DEFINES += QT_NO_CAST_TO_ASCII \
- # QT_NO_CAST_FROM_ASCII
-diff --git a/tests/extensions/extensions.pri b/tests/extensions/extensions.pri
-index 179cd28d..2fd75955 100644
---- a/tests/extensions/extensions.pri
-+++ b/tests/extensions/extensions.pri
-@@ -20,5 +20,4 @@ INCLUDEPATH += . \
- $$TOP_SRC_DIR/lib/signond
-
- QMAKE_CXXFLAGS += \
-- -fno-exceptions \
-- -fno-rtti
-+ -fno-exceptions
-diff --git a/tests/libsignon-qt-tests/libsignon-qt-tests.pro b/tests/libsignon-qt-tests/libsignon-qt-tests.pro
-index 43f2d59f..ac87781d 100644
---- a/tests/libsignon-qt-tests/libsignon-qt-tests.pro
-+++ b/tests/libsignon-qt-tests/libsignon-qt-tests.pro
-@@ -36,8 +36,7 @@ INCLUDEPATH += . \
- $$TOP_SRC_DIR/src/plugins/test
- DEFINES += SSO_CI_TESTMANAGEMENT
- DEFINES += "SIGNOND_PLUGINS_DIR=$${SIGNOND_PLUGINS_DIR_QUOTED}"
--QMAKE_CXXFLAGS += -fno-exceptions \
-- -fno-rtti
-+QMAKE_CXXFLAGS += -fno-exceptions
-
- check.depends = $$TARGET
- check.commands = "SSO_PLUGINS_DIR=$${TOP_BUILD_DIR}/src/plugins/test SSO_EXTENSIONS_DIR=$${TOP_BUILD_DIR}/non-existing-dir $$RUN_WITH_SIGNOND ./libsignon-qt-tests"
-diff --git a/tests/passwordplugintest/passwordplugintest.pro b/tests/passwordplugintest/passwordplugintest.pro
-index 6132921e..ce16fdcf 100644
---- a/tests/passwordplugintest/passwordplugintest.pro
-+++ b/tests/passwordplugintest/passwordplugintest.pro
-@@ -19,5 +19,4 @@ INCLUDEPATH += $${TOP_SRC_DIR}/lib/plugins \
- $${TOP_SRC_DIR}/src/plugins \
- $${TOP_SRC_DIR}/lib
-
--QMAKE_CXXFLAGS += -fno-exceptions \
-- -fno-rtti
-+QMAKE_CXXFLAGS += -fno-exceptions
-diff --git a/tests/signond-tests/signond-tests.pri b/tests/signond-tests/signond-tests.pri
-index 1bbd5a15..e95556ba 100644
---- a/tests/signond-tests/signond-tests.pri
-+++ b/tests/signond-tests/signond-tests.pri
-@@ -34,8 +34,7 @@ INCLUDEPATH += . \
- $${TOP_SRC_DIR}/lib/plugins/signon-plugins-common/SignOn \
- $${TOP_SRC_DIR}/lib \
-
--QMAKE_CXXFLAGS += -fno-exceptions \
-- -fno-rtti
-+QMAKE_CXXFLAGS += -fno-exceptions
-
- check.depends = $$TARGET
- check.commands = "SSO_PLUGINS_DIR=$${TOP_BUILD_DIR}/src/plugins/test SSO_EXTENSIONS_DIR=$${TOP_BUILD_DIR}/non-existing-dir $$RUN_WITH_SIGNOND ./$$TARGET"
---
-GitLab
-