summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuli Suominen <ssuominen@gentoo.org>2010-01-05 12:01:05 +0000
committerSamuli Suominen <ssuominen@gentoo.org>2010-01-05 12:01:05 +0000
commit450b51e0af2b3086ec9255e39722bdc7fdadfb8f (patch)
treebd7d7deb8dc54f81f68cb2dfc04d43edb3e58831 /net-im/licq
parentPrefix doesn't do stable keywords (diff)
downloadhistorical-450b51e0af2b3086ec9255e39722bdc7fdadfb8f.tar.gz
historical-450b51e0af2b3086ec9255e39722bdc7fdadfb8f.tar.bz2
historical-450b51e0af2b3086ec9255e39722bdc7fdadfb8f.zip
Fix memory leak and hebrew support wrt #299734, thanks to Andy Crook for reporting. Remove USE="kde" since it's broken (upstream) with default Oxygen theme wrt #296929, thanks to Marcel Semancik for reporting.
Package-Manager: portage-2.2_rc61/cvs/Linux x86_64
Diffstat (limited to 'net-im/licq')
-rw-r--r--net-im/licq/ChangeLog12
-rw-r--r--net-im/licq/Manifest6
-rw-r--r--net-im/licq/files/licq-1.3.8-hebrew.patch95
-rw-r--r--net-im/licq/files/licq-1.3.8-memory_leak.patch9
-rw-r--r--net-im/licq/licq-1.3.8-r1.ebuild (renamed from net-im/licq/licq-1.3.8.ebuild)26
5 files changed, 134 insertions, 14 deletions
diff --git a/net-im/licq/ChangeLog b/net-im/licq/ChangeLog
index 0bf58133dded..01b185e32f71 100644
--- a/net-im/licq/ChangeLog
+++ b/net-im/licq/ChangeLog
@@ -1,6 +1,14 @@
# ChangeLog for net-im/licq
-# Copyright 1999-2009 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/licq/ChangeLog,v 1.112 2009/12/25 20:20:05 ssuominen Exp $
+# Copyright 1999-2010 Gentoo Foundation; Distributed under the GPL v2
+# $Header: /var/cvsroot/gentoo-x86/net-im/licq/ChangeLog,v 1.113 2010/01/05 12:01:05 ssuominen Exp $
+
+*licq-1.3.8-r1 (05 Jan 2010)
+
+ 05 Jan 2010; Samuli Suominen <ssuominen@gentoo.org> +licq-1.3.8-r1.ebuild,
+ +files/licq-1.3.8-hebrew.patch, +files/licq-1.3.8-memory_leak.patch:
+ Fix memory leak and hebrew support wrt #299734, thanks to Andy Crook for
+ reporting. Remove USE="kde" since it's broken (upstream) with default
+ Oxygen theme wrt #296929, thanks to Marcel Semancik for reporting.
25 Dec 2009; Samuli Suominen <ssuominen@gentoo.org> licq-1.3.6.ebuild:
Remove kdelibs:3.5 depend and USE kde with it wrt #292791 and workaround
diff --git a/net-im/licq/Manifest b/net-im/licq/Manifest
index 0033d0bcd5c9..c78af299fb38 100644
--- a/net-im/licq/Manifest
+++ b/net-im/licq/Manifest
@@ -1,7 +1,9 @@
AUX licq-1.3.6-glibc-2.10.patch 6864 RMD160 807108dcaaec5dfa3cbee446c3a4967bd1189194 SHA1 48014f3e1ede20b7b3e90c0f8e8e610f8ea5517a SHA256 70131d3a3cc6c4b3d3a87c05465ab0b946458d5de03ea5bcd46728dbbf78e211
+AUX licq-1.3.8-hebrew.patch 2092 RMD160 b9891b2131fa91c28a842cd8e9c256154b898ad4 SHA1 b74a3f3ebebf117e25eaacf8671ae5f368ffb07a SHA256 64b6cceed8cdf7142e692b26ca68df37b9ebda38801c2a014310735447331715
+AUX licq-1.3.8-memory_leak.patch 267 RMD160 d00622806241db927568945dce4c996d41bf8c72 SHA1 5bc19377d7895249af11fb4f9d8e52f5818298ad SHA256 a079b61345444ba20e3c8388259fab0e607e03562327f556ffe2037c9a92b92e
DIST licq-1.3.6.tar.bz2 4777777 RMD160 0d626640e02c9991309d6f7c32725cd1d5bdfa37 SHA1 1451da41c82b9a13424c96d8641e642895b723ac SHA256 ad6ea66301923e5d106111a6b4654aaa72131d8b5c499d16dc9fbbc8cd29845e
DIST licq-1.3.8.tar.bz2 4500623 RMD160 07900d5d7bbd7154c5569468a709ed9a63ac83c8 SHA1 3cd6ccf8b584dff7803a639da82c3bed7fafdbac SHA256 fb65cd5447f2771def5cffda113d68b25ee6ed6fe0ebce84638da79e2869ebc6
EBUILD licq-1.3.6.ebuild 3062 RMD160 efd76f3af698deaf98b1b4b16750c2dc32635b38 SHA1 62afcd0b25e2f069510aa4b53b9d50d608e34cbd SHA256 66c450ddc7fc63ee75575c87ed5475d98bdba3276bcbf187bc48c5b7248c5f11
-EBUILD licq-1.3.8.ebuild 2057 RMD160 c2b67ef1616927567147226a592e43ec68baae2a SHA1 62d765a92bf36e2f481b8bc1d577bfc1cbc4c82b SHA256 f5a0fa0fba687cb5c1590d3982c4d28e67004e024c06accd1a78e79075341681
-MISC ChangeLog 17225 RMD160 d33e23a12a9e175090860b2e1a03bbca18b789bc SHA1 5ca3b902bb9c25c03460da79a8f491f769f3a94c SHA256 70530a3afef3ca3afd80e147154f8b4ad10b02f3648efe291abe1f6b4a2931db
+EBUILD licq-1.3.8-r1.ebuild 2132 RMD160 a9c668bd575682f0c533524c372c2a4c38dc52dc SHA1 0a858bb515090e8cb92470f308a0125c68ab8ff4 SHA256 a353dc030ab324880a247b6c433dd301b6d03632bb17ae359b1b1fcb45eca781
+MISC ChangeLog 17620 RMD160 d6aebc750cb4c95d2fcabead8ad132b15a9a353a SHA1 5bdd03640e6bb5837d85521aab32501f40522314 SHA256 30de90b561dd208b0dff6cd1905cb0486a332ae93c52342f44b60a31f27ec887
MISC metadata.xml 249 RMD160 09f64f681d0dd11fd8a5784ae17b7eaaa87cc12f SHA1 936e8c76314d77517317065331498434f2c59674 SHA256 bfa15ab9faf7742a9f33d2ba72410a089690beb639884f357b135951cd663230
diff --git a/net-im/licq/files/licq-1.3.8-hebrew.patch b/net-im/licq/files/licq-1.3.8-hebrew.patch
new file mode 100644
index 000000000000..a0fdb936bdb2
--- /dev/null
+++ b/net-im/licq/files/licq-1.3.8-hebrew.patch
@@ -0,0 +1,95 @@
+--- configure
++++ configure
+@@ -3283,7 +3283,7 @@
+
+ # Check whether --enable-hebrew was given.
+ if test "${enable_hebrew+set}" = set; then :
+- enableval=$enable_hebrew; USE_HEBREW=yes
++ enableval=$enable_hebrew; USE_HEBREW=$enableval
+ else
+ USE_HEBREW=no
+ fi
+--- src/hebrev.c
++++ src/hebrev.c
+@@ -48,6 +48,7 @@
+ short int mode = 0, imode;
+ const char *hmark = NULL, *lmark, *nmark, *nlmark;
+ char ch;
++ const char* srcstart = src;
+
+ if (src == NULL)
+ return NULL;
+@@ -69,7 +70,7 @@
+ if (*src == 0 || iseng(*src))
+ {
+ lmark = src-1;
+- while ((!isheb(*lmark)) && (!ispunct(*lmark))) lmark--;
++ while (lmark > srcstart && !isheb(*lmark) && !ispunct(*lmark)) lmark--;
+ src = lmark;
+ imode = 0;
+ nmark = NULL;
+@@ -114,6 +115,7 @@
+ hmark = NULL;
+ mode = 0;
+ }
++ if (*src == '\0') *dest = '\0';
+ }
+ if (!*src++)
+ break;
+@@ -141,15 +143,16 @@
+ char *temp=NULL, *tmp=NULL;
+ char *arg=NULL, *arg2=NULL;
+ int i=0;
++ char* saveptr = NULL;
+
+ temp = (char*) malloc(strlen(input)+1);
+ tmp = temp;
+
+ strcpy(temp, input);
+
+- arg = strtok(temp, "\n");
++ arg = strtok_r(temp, "\n", &saveptr);
+ for(i = 0; (i < index) && (arg!=NULL); i++)
+- arg = strtok(NULL, "\n");
++ arg = strtok_r(NULL, "\n", &saveptr);
+
+ if(arg != NULL)
+ {
+@@ -164,6 +167,7 @@
+ {
+ char* temp_str = NULL;
+ char* temp = NULL;
++ char* arg = NULL;
+ int i=0;
+ int size = 0;
+ if(src == NULL)
+@@ -172,21 +176,23 @@
+ if((temp_str = (char*)malloc(strlen(src)+1))== NULL)
+ return NULL;
+
+- temp = GetArg(src, i);
+- while(temp != NULL)
++ arg = GetArg(src, i);
++ while(arg != NULL)
+ {
+ i++;
+- temp = hebrew(temp);
++ temp = hebrew(arg);
++ free(arg);
+ memcpy(temp_str + size , temp, strlen(temp));
+ size += strlen(temp) ;
+ temp_str[size++] = '\n';
+
+ free(temp);
+ temp = NULL;
+- temp = GetArg(src, i);
++ arg = GetArg(src, i);
+ }
+- free(temp);
+- temp_str[size]= '\0';
++ // Above loop adds a line break after last line that wasn't there in src
++ // replace it with the null terminator
++ temp_str[--size]= '\0';
+ return temp_str;
+ }
+
diff --git a/net-im/licq/files/licq-1.3.8-memory_leak.patch b/net-im/licq/files/licq-1.3.8-memory_leak.patch
new file mode 100644
index 000000000000..38ea9e0da5bb
--- /dev/null
+++ b/net-im/licq/files/licq-1.3.8-memory_leak.patch
@@ -0,0 +1,9 @@
+--- src/user.cpp
++++ src/user.cpp
+@@ -3631,6 +3631,7 @@
+ {
+ gLog.Error("%sUnable to open picture file (%s):\n%s%s.\n", L_ERRORxSTR,
+ szFilename, L_BLANKxSTR, strerror(errno));
++ close(source);
+ return;
+ }
diff --git a/net-im/licq/licq-1.3.8.ebuild b/net-im/licq/licq-1.3.8-r1.ebuild
index 09f159ea1e07..5da5c0cf97b8 100644
--- a/net-im/licq/licq-1.3.8.ebuild
+++ b/net-im/licq/licq-1.3.8-r1.ebuild
@@ -1,10 +1,10 @@
-# Copyright 1999-2009 Gentoo Foundation
+# Copyright 1999-2010 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/licq/licq-1.3.8.ebuild,v 1.2 2009/12/14 14:23:16 ssuominen Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/licq/licq-1.3.8-r1.ebuild,v 1.1 2010/01/05 12:01:05 ssuominen Exp $
EAPI=2
CMAKE_USE_DIR="${S}/plugins/qt4-gui"
-inherit cmake-utils
+inherit cmake-utils eutils
DESCRIPTION="ICQ Client with v8 support"
HOMEPAGE="http://www.licq.org/"
@@ -13,15 +13,13 @@ SRC_URI="mirror://sourceforge/${PN}/${P}.tar.bz2"
LICENSE="GPL-2"
SLOT="2"
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~sparc ~x86"
-IUSE="debug linguas_he ncurses msn nls crypt kde socks5 ssl qt4 xosd"
+IUSE="debug linguas_he ncurses msn nls crypt socks5 ssl qt4 xosd"
RDEPEND="crypt? ( >=app-crypt/gpgme-1 )
ncurses? ( sys-libs/ncurses
dev-libs/cdk )
ssl? ( >=dev-libs/openssl-0.9.5a )
- qt4? ( x11-libs/qt-gui:4
- kde? ( >=kde-base/kdelibs-4
- !kde-base/kdelibs[kdeprefix] ) )
+ qt4? ( x11-libs/qt-gui:4 )
xosd? ( x11-libs/xosd )"
DEPEND="${RDEPEND}
nls? ( sys-devel/gettext )
@@ -34,6 +32,11 @@ pkg_setup() {
use xosd && licq_plugins="${licq_plugins} osd"
}
+src_prepare() {
+ epatch "${FILESDIR}"/${P}-hebrew.patch \
+ "${FILESDIR}"/${P}-memory_leak.patch
+}
+
src_configure() {
econf \
$(use_enable linguas_he hebrew) \
@@ -49,9 +52,12 @@ src_configure() {
econf
done
- mycmakeargs="${mycmakeargs}
- $(cmake-utils_use_with kde)"
- use qt4 && cmake-utils_src_configure
+ if use qt4; then
+ # http://licq.org/ticket/1662
+ mycmakeargs="${mycmakeargs}
+ -DWITH_KDE=OFF"
+ cmake-utils_src_configure
+ fi
}
src_compile() {