summaryrefslogtreecommitdiff
path: root/community/kmess
diff options
context:
space:
mode:
Diffstat (limited to 'community/kmess')
-rw-r--r--community/kmess/PKGBUILD13
-rw-r--r--community/kmess/fix-crash-in-contactlistmodel.patch29
2 files changed, 38 insertions, 4 deletions
diff --git a/community/kmess/PKGBUILD b/community/kmess/PKGBUILD
index f845cf74c..293e964d8 100644
--- a/community/kmess/PKGBUILD
+++ b/community/kmess/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 94926 2013-08-01 07:01:20Z bpiotrowski $
+# $Id: PKGBUILD 97032 2013-09-11 02:13:11Z bgyorgy $
# Maintainer:
# Contributor: Mateusz Herych <heniekk@gmail.com>
# Contributor: Stefano Zamprogno <stefano.zamprogno@gmail.com>
pkgname=kmess
pkgver=2.0.6.2
-pkgrel=3
+pkgrel=4
pkgdesc="A MSN Messenger client for Linux"
arch=('i686' 'x86_64' 'mips64el')
url='http://kmess.sourceforge.net/'
@@ -15,9 +15,11 @@ makedepends=('automoc4' 'cmake' 'optipng')
optdepends=('cabextract: provides winks support')
install=${pkgname}.install
source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-$pkgver.tar.bz2"
- giflib-5.0.patch)
+ giflib-5.0.patch
+ fix-crash-in-contactlistmodel.patch)
md5sums=('a2e57911713308bef81b9347135cc5dd'
- '97734b073bf4a45ed3612d7626541cee')
+ '97734b073bf4a45ed3612d7626541cee'
+ 'fdfe837f4bd64a5123edc63019bd5cf2')
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
@@ -26,6 +28,9 @@ prepare() {
find -name '*.png' -exec optipng -quiet -force -fix {} +
patch -Np1 -i ../giflib-5.0.patch
+
+ # Fix crash in ContactListModel (FS#32402)
+ patch -Np1 -i ../fix-crash-in-contactlistmodel.patch
}
build() {
diff --git a/community/kmess/fix-crash-in-contactlistmodel.patch b/community/kmess/fix-crash-in-contactlistmodel.patch
new file mode 100644
index 000000000..c72659bc6
--- /dev/null
+++ b/community/kmess/fix-crash-in-contactlistmodel.patch
@@ -0,0 +1,29 @@
+commit e10ebb8bd33cf807e2edfa56c465b40f3237102e
+Author: Ruben Vandamme <ruben@kmess.org>
+Date: Sun Jul 8 10:56:37 2012 +0200
+
+ Fix crash in ContactListModel.
+
+ * Individually delete every child instead of using qDeleteAll.
+ * Crash only happens in combination with Qt 4.8.
+ * See https://bugs.kde.org/show_bug.cgi?id=285951 for similar issue in Amarok.
+ * See https://bugreports.qt-project.org/browse/QTBUG-22037 for Qt report.
+ * Many thanks to Bob ("badjar" on kmess.org/board) for providing the fix.
+
+diff --git a/src/model/contactlistmodelitem.cpp b/src/model/contactlistmodelitem.cpp
+index 462d555..ac5a6ca 100644
+--- a/src/model/contactlistmodelitem.cpp
++++ b/src/model/contactlistmodelitem.cpp
+@@ -79,7 +79,11 @@ ContactListModelItem::ContactListModelItem( Group *group, ContactListModelItem *
+ */
+ ContactListModelItem::~ContactListModelItem()
+ {
+- qDeleteAll( childItems_ );
++ while( !childItems_.isEmpty() )
++ {
++ delete childItems_.takeFirst();
++ }
++
+ childItems_.clear();
+
+ // Delete this item from the parent's children