summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
authorMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-14 16:28:44 -0500
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2022-01-14 17:36:12 -0500
commit9d5f14751fb209411872f202a8712ac84bec333e (patch)
treea998040a5fdd397ba6e384c939bfb575ee6fc6fb /gnu
parent459d5187d9e9aa91d155db1204f1830845b9fe6b (diff)
gnu: jami: Fix crash on exit.
* gnu/packages/patches/jami-fix-crash-on-quit.patch: New patch. * gnu/local.mk (dist_patch_DATA): Register it. * gnu/packages/jami.scm (jami): Apply it.
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk1
-rw-r--r--gnu/packages/jami.scm4
-rw-r--r--gnu/packages/patches/jami-fix-crash-on-quit.patch34
3 files changed, 38 insertions, 1 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 2b7bb3961d..f72d2680af 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1297,6 +1297,7 @@ dist_patch_DATA = \
%D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \
%D%/packages/patches/jsoncpp-pkg-config-version.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \
+ %D%/packages/patches/jami-fix-crash-on-quit.patch \
%D%/packages/patches/jamvm-1.5.1-aarch64-support.patch \
%D%/packages/patches/jamvm-1.5.1-armv7-support.patch \
%D%/packages/patches/jamvm-2.0.0-aarch64-support.patch \
diff --git a/gnu/packages/jami.scm b/gnu/packages/jami.scm
index 21f8c07934..72282bc68e 100644
--- a/gnu/packages/jami.scm
+++ b/gnu/packages/jami.scm
@@ -560,7 +560,9 @@ decentralized calling using P2P-DHT.")
(package
(name "jami")
(version %jami-version)
- (source %jami-sources)
+ (source (origin
+ (inherit %jami-sources)
+ (patches (search-patches "jami-fix-crash-on-quit.patch"))))
(build-system qt-build-system)
(outputs '("out" "debug"))
(arguments
diff --git a/gnu/packages/patches/jami-fix-crash-on-quit.patch b/gnu/packages/patches/jami-fix-crash-on-quit.patch
new file mode 100644
index 0000000000..c25bce588a
--- /dev/null
+++ b/gnu/packages/patches/jami-fix-crash-on-quit.patch
@@ -0,0 +1,34 @@
+Retrieved from:
+https://git.jami.net/savoirfairelinux/jami-client-qt/-/commit/83f68573324a453a6d26e025fd6439f175a79d1b.diff.
+
+With the 'client-qt' prefix added to match the file hierarchy of the release tarball.
+
+diff --git a/client-qt/src/mainapplication.cpp b/client-qt/src/mainapplication.cpp
+index 0c3209fc6fa7c528bec197f1cf9332758170441c..278f19287b86dd2c916935ab0930cbe0abb35d26 100644
+--- a/client-qt/src/mainapplication.cpp
++++ b/client-qt/src/mainapplication.cpp
+@@ -155,7 +155,11 @@ MainApplication::MainApplication(int& argc, char** argv)
+ QObject::connect(this, &QApplication::aboutToQuit, [this] { cleanup(); });
+ }
+
+-MainApplication::~MainApplication() {}
++MainApplication::~MainApplication()
++{
++ engine_.reset();
++ lrcInstance_.reset();
++}
+
+ bool
+ MainApplication::init()
+diff --git a/src/mainapplication.h b/src/mainapplication.h
+index 51306be829478b9fbc1c61a08aeb96938be26dac..4047e3abb3cfd3e6250387a37fa5a896e9bc4161 100644
+--- a/client-qt/src/mainapplication.h
++++ b/client-qt/src/mainapplication.h
+@@ -80,7 +80,6 @@ private:
+ private:
+ QScopedPointer<QFile> debugFile_;
+ QScopedPointer<QQmlApplicationEngine> engine_;
+-
+ QScopedPointer<LRCInstance> lrcInstance_;
+
+ QScopedPointer<ConnectivityMonitor> connectivityMonitor_;