diff --git a/plasma5-workspace.spec b/plasma5-workspace.spec index 5258ca5..25a1663 100644 --- a/plasma5-workspace.spec +++ b/plasma5-workspace.spec @@ -35,8 +35,6 @@ Patch1: create_kdehome.patch # PATCH-FIX_OPENSUSE fix-breeze-sddm-theme-with-many-users.patch alarrosa@suse.com -- Asks for user/password and hide the user list when there's a large number of users Patch2: fix-breeze-sddm-theme-with-many-users.patch # PATCHES 100-200 and above are from upstream 5.5 branch -# PATCH-FIX-UPSTREAM xembedsniproxy-check-for-null-geometry.patch boo#954623, kde#355463, kde#358227 -- fixes an xembedsniproxy crash -Patch100: xembedsniproxy-check-for-null-geometry.patch # PATCHES 201-300 and above are from upstream master/5.6 branch BuildRequires: kf5-filesystem BuildRequires: update-desktop-files @@ -205,7 +203,6 @@ workspace. Development files. %patch0 -p1 %patch1 -p1 %patch2 -p1 -%patch100 -p1 %build %cmake_kf5 -d build -- -DKDE4_COMMON_PAM_SERVICE=xdm -DKDE_DEFAULT_HOME=.kde4 -DCMAKE_INSTALL_LOCALEDIR=share/locale/kf5 diff --git a/xembedsniproxy-check-for-null-geometry.patch b/xembedsniproxy-check-for-null-geometry.patch deleted file mode 100644 index 78f7f7a..0000000 --- a/xembedsniproxy-check-for-null-geometry.patch +++ /dev/null @@ -1,59 +0,0 @@ -From: David Edmundson -Date: Mon, 21 Dec 2015 23:09:50 +0000 -Subject: Check for null geometry in client window -X-Git-Url: http://quickgit.kde.org/?p=plasma-workspace.git&a=commitdiff&h=6232362cca7021e5b436d267e07f9d6875a20a4c ---- -Check for null geometry in client window - -BUG: 355463 ---- - - ---- a/xembed-sni-proxy/sniproxy.cpp -+++ b/xembed-sni-proxy/sniproxy.cpp -@@ -158,23 +158,30 @@ - windowMoveConfigVals); - - -+ QSize clientWindowSize; -+ -+ if (clientGeom) { -+ clientWindowSize = QSize(clientGeom->width, clientGeom->height); -+ } - //if the window is a clearly stupid size resize to be something sensible - //this is needed as chormium and such when resized just fill the icon with transparent space and only draw in the middle - //however spotify does need this as by default the window size is 900px wide. - //use an artbitrary heuristic to make sure icons are always sensible -- if (clientGeom->width > s_embedSize || clientGeom->height > s_embedSize ) -+ if (clientWindowSize.isEmpty() || clientWindowSize.width() > s_embedSize || clientWindowSize.height() > s_embedSize ) - { -+ qCDebug(SNIPROXY) << "Resizing window" << wid << Title() << "from w*h" << clientWindowSize; -+ - const uint32_t windowMoveConfigVals[2] = { s_embedSize, s_embedSize }; - xcb_configure_window(c, wid, - XCB_CONFIG_WINDOW_WIDTH | XCB_CONFIG_WINDOW_HEIGHT, - windowMoveConfigVals); -- qCDebug(SNIPROXY) << "Resizing window" << wid << Title() << "from w*h" << clientGeom->width << clientGeom->height; -+ clientWindowSize = QSize(s_embedSize, s_embedSize); - } - - //show the embedded window otherwise nothing happens - xcb_map_window(c, wid); - -- xcb_clear_area(c, 0, wid, 0, 0, qMin(clientGeom->width, s_embedSize), qMin(clientGeom->height, s_embedSize)); -+ xcb_clear_area(c, 0, wid, 0, 0, clientWindowSize.width(), clientWindowSize.height()); - - xcb_flush(c); - -@@ -245,6 +252,10 @@ - auto cookie = xcb_get_geometry(c, m_windowId); - QScopedPointer - geom(xcb_get_geometry_reply(c, cookie, Q_NULLPTR)); -+ -+ if (!geom) { -+ return QImage(); -+ } - - xcb_image_t *image = xcb_image_get(c, m_windowId, 0, 0, geom->width, geom->height, 0xFFFFFF, XCB_IMAGE_FORMAT_Z_PIXMAP); - -