summaryrefslogtreecommitdiff
path: root/net-im
diff options
context:
space:
mode:
authorJustin Lecher <jlec@gentoo.org>2011-09-24 13:20:53 +0000
committerJustin Lecher <jlec@gentoo.org>2011-09-24 13:20:53 +0000
commit068808895d41b0c7bb463f63e3b986ff8da49bb8 (patch)
treea5587e30ce5a495e8652f010487acc0c075ca50d /net-im
parentMarked ~x64-macos (diff)
downloadgentoo-2-068808895d41b0c7bb463f63e3b986ff8da49bb8.tar.gz
gentoo-2-068808895d41b0c7bb463f63e3b986ff8da49bb8.tar.bz2
gentoo-2-068808895d41b0c7bb463f63e3b986ff8da49bb8.zip
Don't crash on unicode chars, #383463; thanks Suloev Dmitry for the patch; http://trac.gajim.org/ticket/6974
(Portage version: 2.2.0_alpha59/cvs/Linux x86_64)
Diffstat (limited to 'net-im')
-rw-r--r--net-im/gajim/ChangeLog9
-rw-r--r--net-im/gajim/files/0.14.4-unicode.patch19
-rw-r--r--net-im/gajim/gajim-0.14.4-r1.ebuild110
3 files changed, 137 insertions, 1 deletions
diff --git a/net-im/gajim/ChangeLog b/net-im/gajim/ChangeLog
index 0a571892096c..741219e76916 100644
--- a/net-im/gajim/ChangeLog
+++ b/net-im/gajim/ChangeLog
@@ -1,6 +1,13 @@
# ChangeLog for net-im/gajim
# Copyright 1999-2011 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/net-im/gajim/ChangeLog,v 1.121 2011/08/30 14:47:33 jlec Exp $
+# $Header: /var/cvsroot/gentoo-x86/net-im/gajim/ChangeLog,v 1.122 2011/09/24 13:20:53 jlec Exp $
+
+*gajim-0.14.4-r1 (24 Sep 2011)
+
+ 24 Sep 2011; Justin Lecher <jlec@gentoo.org> +files/0.14.4-unicode.patch,
+ +gajim-0.14.4-r1.ebuild:
+ Don't crash on unicode chars, #383463; thanks Suloev Dmitry for the patch;
+ http://trac.gajim.org/ticket/6974
30 Aug 2011; Justin Lecher <jlec@gentoo.org> -gajim-0.13.3.ebuild,
gajim-0.14.1-r2.ebuild, metadata.xml:
diff --git a/net-im/gajim/files/0.14.4-unicode.patch b/net-im/gajim/files/0.14.4-unicode.patch
new file mode 100644
index 000000000000..5c0dd0d314aa
--- /dev/null
+++ b/net-im/gajim/files/0.14.4-unicode.patch
@@ -0,0 +1,19 @@
+diff --git a/src/remote_control.py b/src/remote_control.py
+--- a/src/remote_control.py
++++ b/src/remote_control.py
+@@ -211,6 +211,15 @@ class Remote:
+
+ def raise_signal(self, signal, arg):
+ if self.signal_object:
++ arg_copy = list(arg)
++ newarg = []
++ for a in arg_copy[1]:
++ try:
++ newarg.append(a.decode('utf-8', 'replace'))
++ except:
++ newarg.append(a)
++ arg_copy[1] = newarg
++ arg = tuple(arg_copy)
+ try:
+ getattr(self.signal_object, signal)(get_dbus_struct(arg))
+ except UnicodeDecodeError:
diff --git a/net-im/gajim/gajim-0.14.4-r1.ebuild b/net-im/gajim/gajim-0.14.4-r1.ebuild
new file mode 100644
index 000000000000..6762e63e7e47
--- /dev/null
+++ b/net-im/gajim/gajim-0.14.4-r1.ebuild
@@ -0,0 +1,110 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-im/gajim/gajim-0.14.4-r1.ebuild,v 1.1 2011/09/24 13:20:53 jlec Exp $
+
+EAPI=3
+
+PYTHON_DEPEND="2"
+PYTHON_USE_WITH="sqlite xml"
+
+inherit eutils python versionator
+
+DESCRIPTION="Jabber client written in PyGTK"
+HOMEPAGE="http://www.gajim.org/"
+SRC_URI="http://www.gajim.org/downloads/$(get_version_component_range 1-2)/${P}.tar.bz2"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~hppa ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
+IUSE="avahi crypt dbus gmail gnome idle jingle libnotify networkmanager nls spell srv X xhtml"
+
+# needs EAPI=4
+#REQUIRED_USE="
+# libnotify? ( dbus )
+# avahi? ( dbus )"
+
+COMMON_DEPEND="
+ dev-python/pygtk:2
+ x11-libs/gtk+:2"
+DEPEND="${COMMON_DEPEND}
+ >=dev-util/intltool-0.40.1
+ dev-util/pkgconfig
+ >=sys-devel/gettext-0.17-r1"
+RDEPEND="${COMMON_DEPEND}
+ dev-python/pyopenssl
+ crypt? (
+ app-crypt/gnupg
+ dev-python/pycrypto
+ )
+ dbus? (
+ dev-python/dbus-python
+ dev-libs/dbus-glib
+ libnotify? ( dev-python/notify-python )
+ avahi? ( net-dns/avahi[dbus,gtk,python] )
+ )
+ gmail? ( net-dns/bind-tools )
+ gnome? (
+ dev-python/libgnome-python
+ dev-python/gnome-keyring-python
+ dev-python/egg-python
+ )
+ idle? ( x11-libs/libXScrnSaver )
+ jingle? ( net-libs/farsight2[python] )
+ networkmanager? (
+ dev-python/dbus-python
+ || ( >=net-misc/networkmanager-0.7.1 net-misc/networkmanager[gnome] )
+ )
+ srv? (
+ || (
+ dev-python/libasyncns-python
+ net-dns/bind-tools )
+ )
+ spell? ( app-text/gtkspell )
+ xhtml? ( dev-python/docutils )"
+
+pkg_setup() {
+ if ! use dbus; then
+ if use libnotify; then
+ eerror "The dbus USE flag is required for libnotify support"
+ die "USE=\"dbus\" needed for libnotify support"
+ fi
+ if use avahi; then
+ eerror "The dbus USE flag is required for avahi support"
+ die "USE=\"dbus\" needed for avahi support"
+ fi
+ fi
+ python_pkg_setup
+ python_set_active_version 2
+}
+
+src_prepare() {
+ epatch \
+ "${FILESDIR}"/0.14-python-version.patch \
+ "${FILESDIR}"/0.14.1-testing.patch \
+ "${FILESDIR}"/${PV}-unicode.patch
+ echo '#!/bin/sh' > config/py-compile
+}
+
+src_configure() {
+ econf \
+ $(use_enable nls) \
+ $(use_with X x) \
+ --docdir="/usr/share/doc/${PF}" \
+ --libdir="$(python_get_sitedir)" \
+ --enable-site-packages
+}
+
+src_install() {
+ emake DESTDIR="${D}" install || die "emake install failed"
+
+ rm "${D}/usr/share/doc/${PF}/"{README.html,COPYING} || die
+ dohtml README.html || die
+}
+
+pkg_postinst() {
+ python_mod_optimize ${PN}
+}
+
+pkg_postrm() {
+ python_mod_cleanup ${PN}
+}