summaryrefslogtreecommitdiff
path: root/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch
diff options
context:
space:
mode:
Diffstat (limited to 'kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch')
-rw-r--r--kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch44
1 files changed, 0 insertions, 44 deletions
diff --git a/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch b/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch
deleted file mode 100644
index 55213878ad27..000000000000
--- a/kde-apps/konsole/files/konsole-20.04.1-segfault-on-close.patch
+++ /dev/null
@@ -1,44 +0,0 @@
-From 5e5129d51fa85036832f1af44ec5b875d426392f Mon Sep 17 00:00:00 2001
-From: Maximilian Schiller <manimax3@outlook.de>
-Date: Thu, 28 May 2020 22:57:29 +0200
-Subject: [PATCH] Fix konsolepart Segfault when closed
-
-Assign the _view as the parent to the KXMLGuiFactory because the factory
-is referencing the view widget as its associated widget. Since the
-TerminalDisplay gets destructed first this is now a dangling pointer.
-If the view is set as the parent the factory gets cleaned up correctly.
-
-Also cleanup the created clientBuilder after destruction because it
-cant have a parent and would probably leak memory.
-
-BUG: 415762
-BUG: 421226
-BUG: 421194
-BUG: 421138
----
- src/SessionController.cpp | 6 ++++--
- 1 file changed, 4 insertions(+), 2 deletions(-)
-
-diff --git a/src/SessionController.cpp b/src/SessionController.cpp
-index e72f342c4..99e185f5e 100644
---- a/src/SessionController.cpp
-+++ b/src/SessionController.cpp
-@@ -1732,11 +1732,13 @@ void SessionController::showDisplayContextMenu(const QPoint& position)
- if (factory() == nullptr) {
- if (clientBuilder() == nullptr) {
- setClientBuilder(new KXMLGUIBuilder(_view));
-+
-+ // Client builder does not get delted automatically
-+ connect(this, &QObject::destroyed, this, [this]{ delete clientBuilder(); });
- }
-
-- auto factory = new KXMLGUIFactory(clientBuilder(), this);
-+ auto factory = new KXMLGUIFactory(clientBuilder(), _view);
- factory->addClient(this);
-- ////qDebug() << "Created xmlgui factory" << factory;
- }
-
- QPointer<QMenu> popup = qobject_cast<QMenu*>(factory()->container(QStringLiteral("session-popup-menu"), this));
---
-2.26.2
-