git » krita.git » commit c0adc52

Workaround crash with Qt 5.15 and qt5ct (FS#66808)

author Antonio Rojas
2020-06-03 12:25:46 UTC
committer Antonio Rojas
2020-06-03 12:25:46 UTC
parent dda62c12385677a2d6d3c0dbfbe4cb43cb9036d5

Workaround crash with Qt 5.15 and qt5ct (FS#66808)

PKGBUILD +6 -3
krita-qt5.15-qt5ct.patch +15 -0

diff --git a/PKGBUILD b/PKGBUILD
index 466de17..0a3ecaa 100644
--- a/PKGBUILD
+++ b/PKGBUILD
@@ -2,7 +2,7 @@
 
 pkgname=krita
 pkgver=4.2.9
-pkgrel=4
+pkgrel=5
 pkgdesc="Edit and paint images"
 arch=(x86_64)
 url="https://krita.org"
@@ -17,11 +17,13 @@ conflicts=(calligra-krita krita-l10n)
 replaces=(calligra-krita krita-l10n)
 source=("https://download.kde.org/stable/krita/$pkgver/$pkgname-$pkgver.tar.gz"{,.sig}
          krita-pyqt5-sip5.patch
-         krita-deadlock-qt5.14.2.patch::"https://invent.kde.org/kde/krita/commit/afed6a9e.patch")
+         krita-deadlock-qt5.14.2.patch::"https://invent.kde.org/kde/krita/commit/afed6a9e.patch"
+         krita-qt5.15-qt5ct.patch)
 sha256sums=('9f85bb81eaf4976af57352a482af1fdb86f338051a991f6f43976e0b65956da8'
             'SKIP'
             'ab2f33843d8cad31bc13e0eca7dc732cdbfed054924f25ed61102c0d0971c1d8'
-            '6477ceec976d376172cc82a5a8bf85938a7dffd924286fa79e64ccdab8c901eb')
+            '6477ceec976d376172cc82a5a8bf85938a7dffd924286fa79e64ccdab8c901eb'
+            '68583720a24e232dad49c1e042ed9dd0b257d5a433382ea554e4097ca261760e')
 validpgpkeys=('05D00A8B73A686789E0A156858B9596C722EA3BD') # Boudewijn Rempt <foundation@krita.org>
 
 prepare() {
@@ -30,6 +32,7 @@ prepare() {
   cd $pkgname-$pkgver
   patch -p1 -i ../krita-pyqt5-sip5.patch # Fix sip include dir when PyQt5 is compiled with SIP 5
   patch -p1 -i ../krita-deadlock-qt5.14.2.patch # Fix deadlock on plugin load with Qt 5.14.2
+  patch -p1 -i ../krita-qt5.15-qt5ct.patch # Workaround crash when using Qt 5.15 + qt5ct
 }
 
 build() {
diff --git a/krita-qt5.15-qt5ct.patch b/krita-qt5.15-qt5ct.patch
new file mode 100644
index 0000000..0d1f0ab
--- /dev/null
+++ b/krita-qt5.15-qt5ct.patch
@@ -0,0 +1,15 @@
+diff --git a/libs/ui/opengl/KisOpenGLModeProber.cpp b/libs/ui/opengl/KisOpenGLModeProber.cpp
+index 6589e67034..01e3040759 100644
+--- a/libs/ui/opengl/KisOpenGLModeProber.cpp
++++ b/libs/ui/opengl/KisOpenGLModeProber.cpp
+@@ -181,7 +181,10 @@ KisOpenGLModeProber::probeFormat(const KisOpenGL::RendererConfig &rendererConfig
+         formatSetter.reset(new SurfaceFormatSetter(format));
+ 
+         QGuiApplication::setDesktopSettingsAware(false);
++        QString platformtheme = qgetenv("QT_QPA_PLATFORMTHEME");
++        qunsetenv("QT_QPA_PLATFORMTHEME");
+         application.reset(new QGuiApplication(argc, &argv));
++        qputenv("QT_QPA_PLATFORMTHEME", platformtheme.toLocal8Bit());
+         QGuiApplication::setDesktopSettingsAware(true);
+     }
+