[arch-commits] Commit in kmess/repos (10 files)
Antonio Rojas
arojas at archlinux.org
Tue Apr 14 06:37:17 UTC 2015
Date: Tuesday, April 14, 2015 @ 08:37:16
Author: arojas
Revision: 131339
archrelease: copy trunk to community-staging-i686, community-staging-x86_64
Added:
kmess/repos/community-staging-i686/
kmess/repos/community-staging-i686/PKGBUILD
(from rev 131338, kmess/trunk/PKGBUILD)
kmess/repos/community-staging-i686/fix-crash-in-contactlistmodel.patch
(from rev 131338, kmess/trunk/fix-crash-in-contactlistmodel.patch)
kmess/repos/community-staging-i686/giflib-5.0.patch
(from rev 131338, kmess/trunk/giflib-5.0.patch)
kmess/repos/community-staging-i686/kmess.install
(from rev 131338, kmess/trunk/kmess.install)
kmess/repos/community-staging-x86_64/
kmess/repos/community-staging-x86_64/PKGBUILD
(from rev 131338, kmess/trunk/PKGBUILD)
kmess/repos/community-staging-x86_64/fix-crash-in-contactlistmodel.patch
(from rev 131338, kmess/trunk/fix-crash-in-contactlistmodel.patch)
kmess/repos/community-staging-x86_64/giflib-5.0.patch
(from rev 131338, kmess/trunk/giflib-5.0.patch)
kmess/repos/community-staging-x86_64/kmess.install
(from rev 131338, kmess/trunk/kmess.install)
--------------------------------------------------------------+
community-staging-i686/PKGBUILD | 52 +++++
community-staging-i686/fix-crash-in-contactlistmodel.patch | 29 +++
community-staging-i686/giflib-5.0.patch | 95 ++++++++++
community-staging-i686/kmess.install | 11 +
community-staging-x86_64/PKGBUILD | 52 +++++
community-staging-x86_64/fix-crash-in-contactlistmodel.patch | 29 +++
community-staging-x86_64/giflib-5.0.patch | 95 ++++++++++
community-staging-x86_64/kmess.install | 11 +
8 files changed, 374 insertions(+)
Copied: kmess/repos/community-staging-i686/PKGBUILD (from rev 131338, kmess/trunk/PKGBUILD)
===================================================================
--- community-staging-i686/PKGBUILD (rev 0)
+++ community-staging-i686/PKGBUILD 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Jaroslav Lichtblau <dragonlord at aur.archlinux.org>
+# Contributor: Mateusz Herych <heniekk at gmail.com>
+# Contributor: Stefano Zamprogno <stefano.zamprogno at gmail.com>
+
+pkgname=kmess
+pkgver=2.0.6.2
+pkgrel=8
+pkgdesc="A MSN Messenger client for Linux"
+arch=('i686' 'x86_64')
+url='http://kmess.sourceforge.net/'
+license=('GPL')
+depends=('kdebase-lib')
+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
+ fix-crash-in-contactlistmodel.patch)
+md5sums=('a2e57911713308bef81b9347135cc5dd'
+ '29f7a0c0e27d6b5cafbc3ad498e3e30f'
+ 'fdfe837f4bd64a5123edc63019bd5cf2')
+
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+# Fix invalid PNG images to work with libpng 1.6
+ find -name '*.png' -exec optipng -quiet -force -fix {} +
+
+ patch -Np0 -i ../giflib-5.0.patch
+
+# Fix crash in ContactListModel (FS#32402)
+ patch -Np1 -i ../fix-crash-in-contactlistmodel.patch
+}
+
+build() {
+ cd "${srcdir}"
+
+ mkdir build
+ cd build
+ cmake ../${pkgname}-${pkgver} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+
+ make
+}
+
+package() {
+ cd "${srcdir}"/build
+
+ make DESTDIR="${pkgdir}" install
+}
Copied: kmess/repos/community-staging-i686/fix-crash-in-contactlistmodel.patch (from rev 131338, kmess/trunk/fix-crash-in-contactlistmodel.patch)
===================================================================
--- community-staging-i686/fix-crash-in-contactlistmodel.patch (rev 0)
+++ community-staging-i686/fix-crash-in-contactlistmodel.patch 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,29 @@
+commit e10ebb8bd33cf807e2edfa56c465b40f3237102e
+Author: Ruben Vandamme <ruben at 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
Copied: kmess/repos/community-staging-i686/giflib-5.0.patch (from rev 131338, kmess/trunk/giflib-5.0.patch)
===================================================================
--- community-staging-i686/giflib-5.0.patch (rev 0)
+++ community-staging-i686/giflib-5.0.patch 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,95 @@
+--- contrib/isf-qt/src/isfqt.cpp.orig 2014-06-11 13:10:43.137321400 +0000
++++ contrib/isf-qt/src/isfqt.cpp 2014-06-11 13:12:23.123474616 +0000
+@@ -249,7 +249,7 @@
+ qWarning() << "Couldn't initialize GIF library!";
+ }
+
+- DGifCloseFile( gifImage );
++ DGifCloseFile( gifImage, NULL );
+ gifData.close();
+ */
+
+@@ -484,12 +484,13 @@
+ int width = isfImage.width();
+ int numColors = 0;
+ bool gifError = true;
++ int gifErrCode;
+
+ // Convert the image to GIF using libgif
+
+ // Open the gif file
+ gifData.open( QIODevice::WriteOnly );
+- gifImage = EGifOpen( (void*)&gifData, GifWriteToByteArray );
++ gifImage = EGifOpen( (void*)&gifData, GifWriteToByteArray, &gifErrCode );
+ if( gifImage == 0 )
+ {
+ qWarning() << "Couldn't initialize gif library!";
+@@ -503,7 +504,7 @@
+ numColors = 256;
+ }
+
+- cmap = MakeMapObject( numColors, NULL );
++ cmap = GifMakeMapObject( numColors, NULL );
+ if( cmap == 0 && isfImage.numColors() > 1 )
+ {
+ qWarning() << "Couldn't create map object for gif conversion (colors:" << isfImage.numColors() << ")!";
+@@ -576,7 +577,7 @@
+ else
+ {
+ // Write the extension
+- if( EGifPutExtensionFirst( gifImage, COMMENT_EXT_FUNC_CODE, MAX_GIF_BYTE, isfData.left( MAX_GIF_BYTE ).data() ) == GIF_ERROR )
++ if( EGifPutExtensionLeader( gifImage, COMMENT_EXT_FUNC_CODE) == GIF_ERROR )
+ {
+ qWarning() << "EGifPutExtensionFirst failed!";
+ goto writeError;
+@@ -590,9 +591,9 @@
+ // Write all the full data blocks
+ while( length >= MAX_GIF_BYTE )
+ {
+- if( EGifPutExtensionNext( gifImage, 0, MAX_GIF_BYTE, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
++ if( EGifPutExtensionBlock( gifImage, MAX_GIF_BYTE, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
+ {
+- qWarning() << "EGifPutExtensionNext failed!";
++ qWarning() << "EGifPutExtensionBlock failed!";
+ goto writeError;
+ }
+
+@@ -603,17 +604,17 @@
+ // Write the last block
+ if( length > 0 )
+ {
+- if( EGifPutExtensionLast( gifImage, 0, length, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
++ if( EGifPutExtensionTrailer( gifImage ) == GIF_ERROR )
+ {
+- qWarning() << "EGifPutExtensionLast (n) failed!";
++ qWarning() << "EGifPutExtensionTrailer (n) failed!";
+ goto writeError;
+ }
+ }
+ else
+ {
+- if( EGifPutExtensionLast( gifImage, 0, 0, 0 ) == GIF_ERROR )
++ if( EGifPutExtensionTrailer( gifImage ) == GIF_ERROR )
+ {
+- qWarning() << "EGifPutExtensionLast (0) failed!";
++ qWarning() << "EGifPutExtensionTrailer (0) failed!";
+ goto writeError;
+ }
+ }
+@@ -623,13 +624,13 @@
+
+ writeError:
+ // Clean up the GIF converter etc
+- EGifCloseFile( gifImage );
+- FreeMapObject( cmap );
++ EGifCloseFile( gifImage, NULL );
++ GifFreeMapObject( cmap );
+ gifData.close();
+
+ if( gifError )
+ {
+- qWarning() << "GIF error code:" << GifLastError();
++ qWarning() << "GIF error code:" << GifErrorString(gifErrCode);
+ }
+ else
+ {
Copied: kmess/repos/community-staging-i686/kmess.install (from rev 131338, kmess/trunk/kmess.install)
===================================================================
--- community-staging-i686/kmess.install (rev 0)
+++ community-staging-i686/kmess.install 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
Copied: kmess/repos/community-staging-x86_64/PKGBUILD (from rev 131338, kmess/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD (rev 0)
+++ community-staging-x86_64/PKGBUILD 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,52 @@
+# $Id$
+# Maintainer: Jaroslav Lichtblau <dragonlord at aur.archlinux.org>
+# Contributor: Mateusz Herych <heniekk at gmail.com>
+# Contributor: Stefano Zamprogno <stefano.zamprogno at gmail.com>
+
+pkgname=kmess
+pkgver=2.0.6.2
+pkgrel=8
+pkgdesc="A MSN Messenger client for Linux"
+arch=('i686' 'x86_64')
+url='http://kmess.sourceforge.net/'
+license=('GPL')
+depends=('kdebase-lib')
+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
+ fix-crash-in-contactlistmodel.patch)
+md5sums=('a2e57911713308bef81b9347135cc5dd'
+ '29f7a0c0e27d6b5cafbc3ad498e3e30f'
+ 'fdfe837f4bd64a5123edc63019bd5cf2')
+
+prepare() {
+ cd "${srcdir}/${pkgname}-${pkgver}"
+
+# Fix invalid PNG images to work with libpng 1.6
+ find -name '*.png' -exec optipng -quiet -force -fix {} +
+
+ patch -Np0 -i ../giflib-5.0.patch
+
+# Fix crash in ContactListModel (FS#32402)
+ patch -Np1 -i ../fix-crash-in-contactlistmodel.patch
+}
+
+build() {
+ cd "${srcdir}"
+
+ mkdir build
+ cd build
+ cmake ../${pkgname}-${pkgver} \
+ -DCMAKE_INSTALL_PREFIX=/usr \
+ -DCMAKE_BUILD_TYPE=Release
+
+ make
+}
+
+package() {
+ cd "${srcdir}"/build
+
+ make DESTDIR="${pkgdir}" install
+}
Copied: kmess/repos/community-staging-x86_64/fix-crash-in-contactlistmodel.patch (from rev 131338, kmess/trunk/fix-crash-in-contactlistmodel.patch)
===================================================================
--- community-staging-x86_64/fix-crash-in-contactlistmodel.patch (rev 0)
+++ community-staging-x86_64/fix-crash-in-contactlistmodel.patch 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,29 @@
+commit e10ebb8bd33cf807e2edfa56c465b40f3237102e
+Author: Ruben Vandamme <ruben at 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
Copied: kmess/repos/community-staging-x86_64/giflib-5.0.patch (from rev 131338, kmess/trunk/giflib-5.0.patch)
===================================================================
--- community-staging-x86_64/giflib-5.0.patch (rev 0)
+++ community-staging-x86_64/giflib-5.0.patch 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,95 @@
+--- contrib/isf-qt/src/isfqt.cpp.orig 2014-06-11 13:10:43.137321400 +0000
++++ contrib/isf-qt/src/isfqt.cpp 2014-06-11 13:12:23.123474616 +0000
+@@ -249,7 +249,7 @@
+ qWarning() << "Couldn't initialize GIF library!";
+ }
+
+- DGifCloseFile( gifImage );
++ DGifCloseFile( gifImage, NULL );
+ gifData.close();
+ */
+
+@@ -484,12 +484,13 @@
+ int width = isfImage.width();
+ int numColors = 0;
+ bool gifError = true;
++ int gifErrCode;
+
+ // Convert the image to GIF using libgif
+
+ // Open the gif file
+ gifData.open( QIODevice::WriteOnly );
+- gifImage = EGifOpen( (void*)&gifData, GifWriteToByteArray );
++ gifImage = EGifOpen( (void*)&gifData, GifWriteToByteArray, &gifErrCode );
+ if( gifImage == 0 )
+ {
+ qWarning() << "Couldn't initialize gif library!";
+@@ -503,7 +504,7 @@
+ numColors = 256;
+ }
+
+- cmap = MakeMapObject( numColors, NULL );
++ cmap = GifMakeMapObject( numColors, NULL );
+ if( cmap == 0 && isfImage.numColors() > 1 )
+ {
+ qWarning() << "Couldn't create map object for gif conversion (colors:" << isfImage.numColors() << ")!";
+@@ -576,7 +577,7 @@
+ else
+ {
+ // Write the extension
+- if( EGifPutExtensionFirst( gifImage, COMMENT_EXT_FUNC_CODE, MAX_GIF_BYTE, isfData.left( MAX_GIF_BYTE ).data() ) == GIF_ERROR )
++ if( EGifPutExtensionLeader( gifImage, COMMENT_EXT_FUNC_CODE) == GIF_ERROR )
+ {
+ qWarning() << "EGifPutExtensionFirst failed!";
+ goto writeError;
+@@ -590,9 +591,9 @@
+ // Write all the full data blocks
+ while( length >= MAX_GIF_BYTE )
+ {
+- if( EGifPutExtensionNext( gifImage, 0, MAX_GIF_BYTE, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
++ if( EGifPutExtensionBlock( gifImage, MAX_GIF_BYTE, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
+ {
+- qWarning() << "EGifPutExtensionNext failed!";
++ qWarning() << "EGifPutExtensionBlock failed!";
+ goto writeError;
+ }
+
+@@ -603,17 +604,17 @@
+ // Write the last block
+ if( length > 0 )
+ {
+- if( EGifPutExtensionLast( gifImage, 0, length, isfData.mid( pos, MAX_GIF_BYTE ).data() ) == GIF_ERROR )
++ if( EGifPutExtensionTrailer( gifImage ) == GIF_ERROR )
+ {
+- qWarning() << "EGifPutExtensionLast (n) failed!";
++ qWarning() << "EGifPutExtensionTrailer (n) failed!";
+ goto writeError;
+ }
+ }
+ else
+ {
+- if( EGifPutExtensionLast( gifImage, 0, 0, 0 ) == GIF_ERROR )
++ if( EGifPutExtensionTrailer( gifImage ) == GIF_ERROR )
+ {
+- qWarning() << "EGifPutExtensionLast (0) failed!";
++ qWarning() << "EGifPutExtensionTrailer (0) failed!";
+ goto writeError;
+ }
+ }
+@@ -623,13 +624,13 @@
+
+ writeError:
+ // Clean up the GIF converter etc
+- EGifCloseFile( gifImage );
+- FreeMapObject( cmap );
++ EGifCloseFile( gifImage, NULL );
++ GifFreeMapObject( cmap );
+ gifData.close();
+
+ if( gifError )
+ {
+- qWarning() << "GIF error code:" << GifLastError();
++ qWarning() << "GIF error code:" << GifErrorString(gifErrCode);
+ }
+ else
+ {
Copied: kmess/repos/community-staging-x86_64/kmess.install (from rev 131338, kmess/trunk/kmess.install)
===================================================================
--- community-staging-x86_64/kmess.install (rev 0)
+++ community-staging-x86_64/kmess.install 2015-04-14 06:37:16 UTC (rev 131339)
@@ -0,0 +1,11 @@
+post_install() {
+ xdg-icon-resource forceupdate --theme hicolor &> /dev/null
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
More information about the arch-commits
mailing list