upstream memory patch thanks to Zas
authorDaniel Black <dragonheart@gentoo.org>
Tue, 12 Dec 2006 11:14:36 +0000 (11:14 +0000)
committerDaniel Black <dragonheart@gentoo.org>
Tue, 12 Dec 2006 11:14:36 +0000 (11:14 +0000)
Package-Manager: portage-2.1.2_rc3

net-im/twinkle/ChangeLog
net-im/twinkle/Manifest
net-im/twinkle/files/digest-twinkle-0.9-r2 [new file with mode: 0644]
net-im/twinkle/files/twinkle-0.9-memman.patch [new file with mode: 0644]
net-im/twinkle/twinkle-0.9-r2.ebuild [new file with mode: 0644]

index eb4749b1647048e0bfaa35b5b92b4c117ad29974..5928458cbccbb9f8d4ce2e5a8585d9653159f52d 100644 (file)
@@ -1,6 +1,12 @@
 # ChangeLog for net-im/twinkle
 # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/twinkle/ChangeLog,v 1.22 2006/11/03 07:42:05 dragonheart Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/twinkle/ChangeLog,v 1.23 2006/12/12 11:14:36 dragonheart Exp $
+
+*twinkle-0.9-r2 (12 Dec 2006)
+
+  12 Dec 2006; Daniel Black <dragonheart@gentoo.org>
+  +files/twinkle-0.9-memman.patch, +twinkle-0.9-r2.ebuild:
+  upstream memory patch thanks to Zas
 
 *twinkle-0.9-r1 (03 Nov 2006)
 
index 38ddab2794f31a95373d019a7d4a04bb3b6ce326..639e62c3cf665b5dc5a6ca18495ad1ac510af03c 100644 (file)
@@ -17,6 +17,10 @@ AUX twinkle-0.9-invite4xx.patch 393 RMD160 75c719c6cc1f06587f14d72dbc3ad988bf6ed
 MD5 4d81b1ef98fee6aba75ffebafb1fbe73 files/twinkle-0.9-invite4xx.patch 393
 RMD160 75c719c6cc1f06587f14d72dbc3ad988bf6edacd files/twinkle-0.9-invite4xx.patch 393
 SHA256 4c3f3042ec8e1957f854b7884ca405aae7af68ce7c64cafad31e5b75c51af855 files/twinkle-0.9-invite4xx.patch 393
+AUX twinkle-0.9-memman.patch 1914 RMD160 9a97f42c071aaa097d5166c352479fcb9591662d SHA1 c9120cbb8b04d2ab4ab346664320b73d6a4dbdab SHA256 01f2a1a113bf572285221085389f9a7f9d540983f845793960a85d2505de3ce3
+MD5 673e730e8de990818919a6b07735b6ba files/twinkle-0.9-memman.patch 1914
+RMD160 9a97f42c071aaa097d5166c352479fcb9591662d files/twinkle-0.9-memman.patch 1914
+SHA256 01f2a1a113bf572285221085389f9a7f9d540983f845793960a85d2505de3ce3 files/twinkle-0.9-memman.patch 1914
 DIST twinkle-0.8.1.tar.gz 982496 RMD160 7637d322355bae3608f5fc7e8879f2720fa4520b SHA1 b00b0e41de0a833f30f0373c50a72adcffcd92aa SHA256 a1d7df3f6e6ef758028f7f30982e434c513cce4ac4cd759d76dfd859a93bc3b3
 DIST twinkle-0.8.tar.gz 1033092 RMD160 1adc000e9c0e6ef76599a968399e8287aec5f158 SHA1 816bb482d7a70045d6586929121b22da39571264 SHA256 075e6358e17a185b089bffeda4643b95f7a485e911c499b62e4f77a971315337
 DIST twinkle-0.9.tar.gz 1012524 RMD160 f6b8b70a9630687cf7f100c9dde888289d97f082 SHA1 b0ef83aa738ec5504f0d0785b9be868835344284 SHA256 22f536aaf6a7aa6870c31d03190b206509cfc8b6147c3af7080d6dbfa5a992b6
@@ -32,14 +36,18 @@ EBUILD twinkle-0.9-r1.ebuild 1505 RMD160 f87a86ca45ebb5f9b3586b0ac49b2d09f026bde
 MD5 7ea5262a4a6aa08aa2078cb910cf4339 twinkle-0.9-r1.ebuild 1505
 RMD160 f87a86ca45ebb5f9b3586b0ac49b2d09f026bde2 twinkle-0.9-r1.ebuild 1505
 SHA256 9f292cffb7a64e010cdd5e85c1ab6796210f27629c086f180fed5e64f0ca72a5 twinkle-0.9-r1.ebuild 1505
+EBUILD twinkle-0.9-r2.ebuild 1545 RMD160 451726e1914a641a554acd56cd5e92807b428513 SHA1 3dc1c804611d99bc0bf72f0f36b1ffa1ad10d2c4 SHA256 d2857ab644db065d88b80a8102af5be067bdabd7166f7ccc858a5ff8184b045d
+MD5 a0f035966d068ca89ed5e0b2533df34d twinkle-0.9-r2.ebuild 1545
+RMD160 451726e1914a641a554acd56cd5e92807b428513 twinkle-0.9-r2.ebuild 1545
+SHA256 d2857ab644db065d88b80a8102af5be067bdabd7166f7ccc858a5ff8184b045d twinkle-0.9-r2.ebuild 1545
 EBUILD twinkle-0.9.ebuild 1421 RMD160 5e08de224162f4a9b72339a01b00d7e6d02e50ec SHA1 b0db7d47bf614fd2506a46bf0a0a8cd145db671d SHA256 77a337583ef41cd6c7e4470dcfab5c7151d7984586a8b09f45a1f9439dbcb8ac
 MD5 3411d02d5ce416a6640d3bb627da8235 twinkle-0.9.ebuild 1421
 RMD160 5e08de224162f4a9b72339a01b00d7e6d02e50ec twinkle-0.9.ebuild 1421
 SHA256 77a337583ef41cd6c7e4470dcfab5c7151d7984586a8b09f45a1f9439dbcb8ac twinkle-0.9.ebuild 1421
-MISC ChangeLog 4247 RMD160 7991d7e1cca3b4f36064302cc7f65ea4f231c4ee SHA1 a68d7437eb71e5f8e8e5a96a74eaa20d75e08440 SHA256 016141d5d146e47ba8a3d54b3b66a5242e5615f538abb5a9b45f46f43aba1e4b
-MD5 bc84e98fbb189340ae580c2597735e0d ChangeLog 4247
-RMD160 7991d7e1cca3b4f36064302cc7f65ea4f231c4ee ChangeLog 4247
-SHA256 016141d5d146e47ba8a3d54b3b66a5242e5615f538abb5a9b45f46f43aba1e4b ChangeLog 4247
+MISC ChangeLog 4429 RMD160 9afcec009f9ca048fdbc960e5f2cc72abbce5e92 SHA1 ce4b8c6111191d3fe68c00251968c12940123f9b SHA256 dd50bf199ff1dea1749ae9cadce5ecefdbbfaee70bd94eee537c4efc366793fc
+MD5 58d2844765eea4a6d09f21a1f42d946b ChangeLog 4429
+RMD160 9afcec009f9ca048fdbc960e5f2cc72abbce5e92 ChangeLog 4429
+SHA256 dd50bf199ff1dea1749ae9cadce5ecefdbbfaee70bd94eee537c4efc366793fc ChangeLog 4429
 MISC metadata.xml 458 RMD160 51da9f8eb28d451a724fa7b687894976057263c1 SHA1 789cc96e32af0b71920e2df2c8ab7f45c1e9279d SHA256 9ee142b0e5854bae9e0365b52f6f0cf00a3b428c0c199ccce029108d03f42996
 MD5 81380b5fa13f903ff321873d95ed35bb metadata.xml 458
 RMD160 51da9f8eb28d451a724fa7b687894976057263c1 metadata.xml 458
@@ -56,10 +64,13 @@ SHA256 87da7cca46528de6459ae95978fae5b00aaf557a264996221caefbe0dfeaddd6 files/di
 MD5 6878c2315906eb2513bc498959415f2f files/digest-twinkle-0.9-r1 238
 RMD160 efa1199d4550bd36803280378c6cf64a5c94f9b3 files/digest-twinkle-0.9-r1 238
 SHA256 87da7cca46528de6459ae95978fae5b00aaf557a264996221caefbe0dfeaddd6 files/digest-twinkle-0.9-r1 238
+MD5 6878c2315906eb2513bc498959415f2f files/digest-twinkle-0.9-r2 238
+RMD160 efa1199d4550bd36803280378c6cf64a5c94f9b3 files/digest-twinkle-0.9-r2 238
+SHA256 87da7cca46528de6459ae95978fae5b00aaf557a264996221caefbe0dfeaddd6 files/digest-twinkle-0.9-r2 238
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.5-ecc0.1.6 (GNU/Linux)
 
-iD8DBQFFSvUwmdTrptrqvGERApNeAJ9aWMH2/G+RSlJlz3+6EgmCoJPrDwCeOoWB
-PTRJGaD3nsREb7QSHfdix6g=
-=kt4M
+iD8DBQFFfo86mdTrptrqvGERAh8XAJ9lsNYA3rQDQ0haYvMol37e6D8OZgCghZRe
+h1rk9gVEr+dw0GvjJMYY8eI=
+=Su2y
 -----END PGP SIGNATURE-----
diff --git a/net-im/twinkle/files/digest-twinkle-0.9-r2 b/net-im/twinkle/files/digest-twinkle-0.9-r2
new file mode 100644 (file)
index 0000000..0f87aa5
--- /dev/null
@@ -0,0 +1,3 @@
+MD5 74ef85e9f4570cec10bd23d301f5549e twinkle-0.9.tar.gz 1012524
+RMD160 f6b8b70a9630687cf7f100c9dde888289d97f082 twinkle-0.9.tar.gz 1012524
+SHA256 22f536aaf6a7aa6870c31d03190b206509cfc8b6147c3af7080d6dbfa5a992b6 twinkle-0.9.tar.gz 1012524
diff --git a/net-im/twinkle/files/twinkle-0.9-memman.patch b/net-im/twinkle/files/twinkle-0.9-memman.patch
new file mode 100644 (file)
index 0000000..ccd7dc7
--- /dev/null
@@ -0,0 +1,61 @@
+Index: src/audits/memman.cpp
+===================================================================
+--- src/audits/memman.cpp      (revision 223)
++++ src/audits/memman.cpp      (working copy)
+@@ -114,13 +114,22 @@
+               return;
+       }
+-      pointer_map.erase(p);
++
+       bool array_mismatch = (is_array != i->second.is_array);
+-      mtx_memman.unlock();
+       // Check mixing of array new/delete
++      // NOTE: after the pointer has been erased from pointer_map, the
++      //       iterator i is invalid.
++      //       The mutex mtx_memman should be unlocked before logging to
++      //       avoid dead locks.
+       if (array_mismatch) {
+               num_array_mixing++;
++              string allocation_filename = i->second.filename;
++              int allocation_lineno = i->second.lineno;
++              bool allocation_is_array = i->second.is_array;
++              pointer_map.erase(p);
++              mtx_memman.unlock();
++              
+               log_file->write_header("t_memman::trc_delete",
+                       LOG_MEMORY, LOG_WARNING);
+               log_file->write_raw(filename);
+@@ -130,21 +139,24 @@
+               log_file->write_raw(ptr2str(p));
+               log_file->write_raw(" is deleted ");
+               if (is_array) {
+-                      log_file->write_raw(" as array (delete []).\n");
++                      log_file->write_raw("as array (delete []).\n");
+               } else {
+-                      log_file->write_raw(" normally (delete).\n");
++                      log_file->write_raw("normally (delete).\n");
+               }
+               log_file->write_raw("But it was allocated ");
+-              if (i->second.is_array) {
+-                      log_file->write_raw(" as array (new []) \n");
++              if (allocation_is_array) {
++                      log_file->write_raw("as array (new []) \n");
+               } else {
+-                      log_file->write_raw(" normally (new) \n");
++                      log_file->write_raw("normally (new) \n");
+               }
+-              log_file->write_raw(i->second.filename);
++              log_file->write_raw(allocation_filename);
+               log_file->write_raw(", line ");
+-              log_file->write_raw(i->second.lineno);
++              log_file->write_raw(allocation_lineno);
+               log_file->write_endl();
+               log_file->write_footer();
++      } else {
++              pointer_map.erase(p);
++              mtx_memman.unlock();
+       }
+ }
diff --git a/net-im/twinkle/twinkle-0.9-r2.ebuild b/net-im/twinkle/twinkle-0.9-r2.ebuild
new file mode 100644 (file)
index 0000000..59a33ce
--- /dev/null
@@ -0,0 +1,57 @@
+# Copyright 1999-2006 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-im/twinkle/twinkle-0.9-r2.ebuild,v 1.1 2006/12/12 11:14:36 dragonheart Exp $
+
+inherit eutils qt3
+
+DESCRIPTION="a soft phone for your VOIP communcations using SIP"
+HOMEPAGE="http://www.twinklephone.com/"
+SRC_URI="http://www.xs4all.nl/~mfnboer/twinkle/download/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~amd64 ~ppc ~x86"
+IUSE="arts speex ilbc zrtp"
+
+# Requires libqt-mt actually...  Is that *always* built, or do we need to check?
+RDEPEND=">=net-libs/ccrtp-1.5.0
+       >=dev-cpp/commoncpp2-1.4.1
+       $(qt_min_version 3.3.0)
+       arts? ( kde-base/arts )
+       media-libs/libsndfile
+       dev-libs/boost
+       speex? ( media-libs/speex )
+       ilbc? ( dev-libs/ilbc-rfc3951 )
+       zrtp? ( net-libs/libzrtpcpp )"
+
+DEPEND="${RDEPEND}
+       dev-util/pkgconfig"
+
+src_unpack() {
+       unpack ${A}
+       cd "${S}"
+       epatch "${FILESDIR}"/${PN}-0.4.1-badcflags.patch
+       epatch "${FILESDIR}"/${P}-dtmf.patch
+       epatch "${FILESDIR}"/${P}-invite4xx.patch
+       epatch "${FILESDIR}"/${P}-memman.patch
+}
+
+src_compile() {
+       econf \
+                       $(use_with ilbc) \
+                       $(use_with arts) \
+                       $(use_with zrtp) \
+                       $(use_with speex) || die 'Error: conf failed'
+       emake || die "Error: emake failed!"
+}
+
+src_install() {
+       emake DESTDIR="${D}" install || die
+       dodoc AUTHORS NEWS README THANKS
+       domenu twinkle.desktop
+}
+
+pkg_postinst() {
+       einfo "if you get crashes on startup re-emerge commoncpp2 ccrtp and     twinkle"
+       einfo "see http://www.xs4all.nl/~mfnboer/twinkle/faq.html#crash_startup"
+}