summaryrefslogtreecommitdiff
path: root/community/kmess
diff options
context:
space:
mode:
Diffstat (limited to 'community/kmess')
-rw-r--r--community/kmess/PKGBUILD12
-rw-r--r--community/kmess/giflib-5.0.patch85
2 files changed, 93 insertions, 4 deletions
diff --git a/community/kmess/PKGBUILD b/community/kmess/PKGBUILD
index 772815e49..ec205977f 100644
--- a/community/kmess/PKGBUILD
+++ b/community/kmess/PKGBUILD
@@ -1,11 +1,11 @@
-# $Id: PKGBUILD 91296 2013-05-20 21:10:18Z foutrelis $
+# $Id: PKGBUILD 94926 2013-08-01 07:01:20Z bpiotrowski $
# Maintainer:
# Contributor: Mateusz Herych <heniekk@gmail.com>
# Contributor: Stefano Zamprogno <stefano.zamprogno@gmail.com>
pkgname=kmess
pkgver=2.0.6.2
-pkgrel=2
+pkgrel=3
pkgdesc="A MSN Messenger client for Linux"
arch=('i686' 'x86_64')
url='http://kmess.sourceforge.net/'
@@ -14,14 +14,18 @@ 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")
-md5sums=('a2e57911713308bef81b9347135cc5dd')
+source=("http://downloads.sourceforge.net/${pkgname}/${pkgname}-$pkgver.tar.bz2"
+ giflib-5.0.patch)
+md5sums=('a2e57911713308bef81b9347135cc5dd'
+ '97734b073bf4a45ed3612d7626541cee')
prepare() {
cd "${srcdir}/${pkgname}-${pkgver}"
# Fix invalid PNG images to work with libpng 1.6
find -name '*.png' -exec optipng -quiet -force -fix {} +
+
+ patch -Np1 -i ../giflib-5.0.patch
}
build() {
diff --git a/community/kmess/giflib-5.0.patch b/community/kmess/giflib-5.0.patch
new file mode 100644
index 000000000..9b959b175
--- /dev/null
+++ b/community/kmess/giflib-5.0.patch
@@ -0,0 +1,85 @@
+diff -rupN a/contrib/isf-qt/src/isfqt.cpp b/contrib/isf-qt/src/isfqt.cpp
+--- a/contrib/isf-qt/src/isfqt.cpp 2012-02-18 16:28:01.000000000 +0000
++++ b/contrib/isf-qt/src/isfqt.cpp 2013-07-30 20:51:06.705394145 +0000
+@@ -484,12 +484,13 @@ QByteArray Stream::writerGif( const Draw
+ 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 @@ QByteArray Stream::writerGif( const Draw
+ 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 @@ QByteArray Stream::writerGif( const Draw
+ 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 @@ QByteArray Stream::writerGif( const Draw
+ // 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 @@ QByteArray Stream::writerGif( const Draw
+ // 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;
+ }
+ }
+@@ -624,12 +625,12 @@ QByteArray Stream::writerGif( const Draw
+ writeError:
+ // Clean up the GIF converter etc
+ EGifCloseFile( gifImage );
+- FreeMapObject( cmap );
++ GifFreeMapObject( cmap );
+ gifData.close();
+
+ if( gifError )
+ {
+- qWarning() << "GIF error code:" << GifLastError();
++ qWarning() << "GIF error code:" << GifErrorString(gifErrCode);
+ }
+ else
+ {