summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'kde-plasma/kscreen/files/kscreen-5.24.5-fix-kded-xcb-resources-leak.patch')
-rw-r--r--kde-plasma/kscreen/files/kscreen-5.24.5-fix-kded-xcb-resources-leak.patch61
1 files changed, 0 insertions, 61 deletions
diff --git a/kde-plasma/kscreen/files/kscreen-5.24.5-fix-kded-xcb-resources-leak.patch b/kde-plasma/kscreen/files/kscreen-5.24.5-fix-kded-xcb-resources-leak.patch
deleted file mode 100644
index ecba1664c51c..000000000000
--- a/kde-plasma/kscreen/files/kscreen-5.24.5-fix-kded-xcb-resources-leak.patch
+++ /dev/null
@@ -1,61 +0,0 @@
-From 93cfd297506e4106a7b6e7bcc649442c5bf0f7d1 Mon Sep 17 00:00:00 2001
-From: Stefan Becker <chemobejk@gmail.com>
-Date: Sun, 29 May 2022 23:33:55 +0300
-Subject: [PATCH] X11: fix kded xcb resource leak
-
-This fixes commit 579358f501ae978aa527a25eb3ef9dd42557db46
-
-XOpenDisplay() internally calls xcb_connect(), creating a new XCB client
-connection. This means that on every KScreen configuration change event
-the kded5 process creates a new connection until XCB runs into the hard
-limit of 256 of clients, leading to the dreaded "Maximum number of
-clients reached" error.
-
-Re-use the display from QX11Info instead of calling XOpenDisplay().
-
-BUG: 453280
-
-
-(cherry picked from commit 0270a49328aa70b14dd08e2ed5a425ca3f8e4fd5)
----
- kded/daemon.cpp | 17 ++++++++---------
- 1 file changed, 8 insertions(+), 9 deletions(-)
-
-diff --git a/kded/daemon.cpp b/kded/daemon.cpp
-index e8ed4ac..443d98d 100644
---- a/kded/daemon.cpp
-+++ b/kded/daemon.cpp
-@@ -361,6 +361,14 @@ void KScreenDaemon::alignX11TouchScreen()
- if (qGuiApp->platformName() != QStringLiteral("xcb")) {
- return;
- }
-+ auto *display = QX11Info::display();
-+ if (!display) {
-+ return;
-+ }
-+ auto *connection = QX11Info::connection();
-+ if (!connection) {
-+ return;
-+ }
-
- const QRect totalRect(QPoint(0, 0), m_monitoredConfig->data()->screen()->currentSize());
- QRect internalOutputRect;
-@@ -411,15 +419,6 @@ void KScreenDaemon::alignX11TouchScreen()
- break;
- }
-
-- auto *display = XOpenDisplay(nullptr);
-- if (!display) {
-- return;
-- }
-- auto *connection = QX11Info::connection();
-- if (!connection) {
-- return;
-- }
--
- auto getAtom = [](xcb_connection_t *connection, const char *name) {
- auto cookie = xcb_intern_atom(connection, true, strlen(name), name);
- auto reply = xcb_intern_atom_reply(connection, cookie, nullptr);
---
-GitLab
-