author | Antonio Rojas
<arojas@archlinux.org> 2019-06-19 08:49:59 UTC |
committer | Antonio Rojas
<arojas@archlinux.org> 2019-06-19 08:49:59 UTC |
parent | 259a817f5fceb53bf8861bd1c52765216e36c479 |
PKGBUILD | +2 | -2 |
qtwayland-kscreenlocker-crash.patch | +39 | -0 |
diff --git a/PKGBUILD b/PKGBUILD index bf509f2..1a0a233 100644 --- a/PKGBUILD +++ b/PKGBUILD @@ -2,7 +2,7 @@ # Contributor: Andrea Scarpino <andrea@archlinux.org> pkgname=qt5-wayland -_qtver=5.12.4 +_qtver=5.13.0 pkgver=${_qtver/-/} pkgrel=1 arch=('x86_64') @@ -13,7 +13,7 @@ depends=('qt5-declarative' 'libxcomposite' 'wayland') # namcap note: wayland is groups=('qt' 'qt5') _pkgfqn="${pkgname/5-/}-everywhere-src-${_qtver}" source=("https://download.qt.io/official_releases/qt/${pkgver%.*}/${_qtver}/submodules/${_pkgfqn}.tar.xz") -sha256sums=('2fade959c3927687134c597d85c12ba1af22129a60ab326c2dc77a648e74e6b7') +sha256sums=('b67a6d8119628bca3301bd03992880db07d61d405534067c9cd2a598695a7cf3') prepare() { mkdir -p build diff --git a/qtwayland-kscreenlocker-crash.patch b/qtwayland-kscreenlocker-crash.patch new file mode 100644 index 0000000..318675c --- /dev/null +++ b/qtwayland-kscreenlocker-crash.patch @@ -0,0 +1,39 @@ +From 999bdb0dafe6f65ea41a4faf24ef5062f3dd6bcc Mon Sep 17 00:00:00 2001 +From: Johan Klokkhammer Helsing <johan.helsing@qt.io> +Date: Tue, 21 May 2019 09:06:30 +0200 +Subject: [PATCH 1/1] Client: Don't crash when the cursor theme fails to load + +Fixes: QTBUG-75920 +Change-Id: I29d84b487afb2a90b8a633abce2fcc39ca75adae +--- + src/client/qwaylandinputdevice.cpp | 7 +++++++ + 1 file changed, 7 insertions(+) + +diff --git a/src/client/qwaylandinputdevice.cpp b/src/client/qwaylandinputdevice.cpp +index 39c02d962..7f6f01cd1 100644 +--- a/src/client/qwaylandinputdevice.cpp ++++ b/src/client/qwaylandinputdevice.cpp +@@ -272,6 +272,10 @@ void QWaylandInputDevice::Pointer::updateCursorTheme() + int pixelSize = cursorSize() * scale; + auto *display = seat()->mQDisplay; + mCursor.theme = display->loadCursorTheme(cursorThemeName(), pixelSize); ++ ++ if (!mCursor.theme) ++ return; // A warning has already been printed in loadCursorTheme ++ + if (auto *arrow = mCursor.theme->cursorImage(Qt::ArrowCursor)) { + int arrowPixelSize = qMax(arrow->width, arrow->height); // Not all cursor themes are square + while (scale > 1 && arrowPixelSize / scale < cursorSize()) +@@ -310,6 +314,9 @@ void QWaylandInputDevice::Pointer::updateCursor() + if (!mCursor.theme || idealCursorScale() != mCursor.themeBufferScale) + updateCursorTheme(); + ++ if (!mCursor.theme) ++ return; ++ + // Set from shape using theme + if (struct ::wl_cursor_image *image = mCursor.theme->cursorImage(shape)) { + struct wl_buffer *buffer = wl_cursor_image_get_buffer(image); +-- +2.16.3 +