diff options
author | Diego Elio Pettenò <flameeyes@gentoo.org> | 2006-06-15 11:33:13 +0000 |
---|---|---|
committer | Diego Elio Pettenò <flameeyes@gentoo.org> | 2006-06-15 11:33:13 +0000 |
commit | 5280000bcef147e399418656d3849bff4bec6398 (patch) | |
tree | cc3523e6d8b69a47e4dab967f9a37d0b50034ad3 /net-im/kopete | |
parent | Note that the ghc-package eclass is maintaind by the Haskell herd. (diff) | |
download | gentoo-2-5280000bcef147e399418656d3849bff4bec6398.tar.gz gentoo-2-5280000bcef147e399418656d3849bff4bec6398.tar.bz2 gentoo-2-5280000bcef147e399418656d3849bff4bec6398.zip |
Add patch to fix Jabber MUC invitations, as reported by Raymond Lewis Rebbeck in bug #136845.
(Portage version: 2.1)
Diffstat (limited to 'net-im/kopete')
-rw-r--r-- | net-im/kopete/ChangeLog | 9 | ||||
-rw-r--r-- | net-im/kopete/files/digest-kopete-0.12.0-r1 | 3 | ||||
-rw-r--r-- | net-im/kopete/files/kopete-0.12-jabber-muc-chat.patch | 75 | ||||
-rw-r--r-- | net-im/kopete/kopete-0.12.0-r1.ebuild | 81 |
4 files changed, 167 insertions, 1 deletions
diff --git a/net-im/kopete/ChangeLog b/net-im/kopete/ChangeLog index 8fd5fe761d22..4f91570e76bc 100644 --- a/net-im/kopete/ChangeLog +++ b/net-im/kopete/ChangeLog @@ -1,6 +1,13 @@ # ChangeLog for net-im/kopete # Copyright 1999-2006 Gentoo Foundation; Distributed under the GPL v2 -# $Header: /var/cvsroot/gentoo-x86/net-im/kopete/ChangeLog,v 1.62 2006/06/09 21:34:04 mattepiu Exp $ +# $Header: /var/cvsroot/gentoo-x86/net-im/kopete/ChangeLog,v 1.63 2006/06/15 11:33:13 flameeyes Exp $ + +*kopete-0.12.0-r1 (15 Jun 2006) + + 15 Jun 2006; Diego Pettenò <flameeyes@gentoo.org> + +files/kopete-0.12-jabber-muc-chat.patch, +kopete-0.12.0-r1.ebuild: + Add patch to fix Jabber MUC invitations, as reported by Raymond Lewis + Rebbeck in bug #136845. 09 Jun 2006; Matteo Azzali <mattepiu@gentoo.org> +files/kopete-0.12-away.diff, kopete-0.12.0.ebuild: diff --git a/net-im/kopete/files/digest-kopete-0.12.0-r1 b/net-im/kopete/files/digest-kopete-0.12.0-r1 new file mode 100644 index 000000000000..488e78a604c5 --- /dev/null +++ b/net-im/kopete/files/digest-kopete-0.12.0-r1 @@ -0,0 +1,3 @@ +MD5 392c5af64177ae29b3eebc10b91ad782 kopete-0.12.tar.bz2 5303165 +RMD160 f69576edb740dc80b74e69455b3302e7345d71b6 kopete-0.12.tar.bz2 5303165 +SHA256 1fc32f9729dcf29ae5cad344858ec7d4b3bbb0f94f13edbbbe72462e89cdfa58 kopete-0.12.tar.bz2 5303165 diff --git a/net-im/kopete/files/kopete-0.12-jabber-muc-chat.patch b/net-im/kopete/files/kopete-0.12-jabber-muc-chat.patch new file mode 100644 index 000000000000..a85cb5bff808 --- /dev/null +++ b/net-im/kopete/files/kopete-0.12-jabber-muc-chat.patch @@ -0,0 +1,75 @@ +See Gentoo bug #136845 and KDE bug #128997. + +diff -Nur kopete-0.12.0.old/kopete/protocols/jabber/jabbercontact.cpp kopete-0.12.0/kopete/protocols/jabber/jabbercontact.cpp +--- kopete-0.12.0.old/kopete/protocols/jabber/jabbercontact.cpp 2006-05-31 09:54:02.000000000 +0930 ++++ kopete-0.12.0/kopete/protocols/jabber/jabbercontact.cpp 2006-06-14 08:17:54.000000000 +0930 +@@ -64,7 +64,7 @@ + * JabberContact constructor + */ + JabberContact::JabberContact (const XMPP::RosterItem &rosterItem, Kopete::Account *_account, Kopete::MetaContact * mc, const QString &legacyId) +- : JabberBaseContact ( rosterItem, _account, mc, legacyId) , m_syncTimer(0L) ++ : JabberBaseContact ( rosterItem, _account, mc, legacyId) , mDiscoDone(false), m_syncTimer(0L) + { + kdDebug(JABBER_DEBUG_GLOBAL) << k_funcinfo << contactId() << " is created - " << this << endl; + // this contact is able to transfer files +@@ -118,7 +118,6 @@ + mRequestDeliveredEvent = false; + mRequestComposingEvent = false; + mRequestGoneEvent = false; +- mDiscoDone = false; + } + + +diff -Nur kopete-0.12.0.old/kopete/protocols/jabber/jabbercontactpool.cpp kopete-0.12.0/kopete/protocols/jabber/jabbercontactpool.cpp +--- kopete-0.12.0.old/kopete/protocols/jabber/jabbercontactpool.cpp 2006-05-31 09:54:02.000000000 +0930 ++++ kopete-0.12.0/kopete/protocols/jabber/jabbercontactpool.cpp 2006-06-14 08:18:01.000000000 +0930 +@@ -22,6 +22,7 @@ + #include <kdebug.h> + #include <kmessagebox.h> + #include <kopeteaccountmanager.h> ++#include <kopetecontactlist.h> + #include "kopeteuiglobal.h" + #include "jabberprotocol.h" + #include "jabberbasecontact.h" +@@ -118,14 +119,34 @@ + JabberContactPoolItem *mContactItem = findPoolItem ( mContact ); + if ( mContactItem) + { +- kdDebug(JABBER_DEBUG_GLOBAL) << k_funcinfo << "Updating existing contact " << mContact.jid().full() << endl; +- +- // It exists, update it. +- mContactItem->contact()->updateContact ( mContact ); +- mContactItem->setDirty ( dirty ); ++ if(mContactItem->contact()->inherits(roomContact ? ++ (const char*)("JabberGroupContact") : (const char*)("JabberGroupMemberContact") ) ) ++ { ++ ++ kdDebug(JABBER_DEBUG_GLOBAL) << k_funcinfo << "Updating existing contact " << mContact.jid().full() << endl; ++ ++ // It exists, update it. ++ mContactItem->contact()->updateContact ( mContact ); ++ mContactItem->setDirty ( dirty ); ++ ++ //we must tell to the originating function that no new contact has been added ++ return 0L;//mContactItem->contact (); ++ } ++ else ++ { ++ //this happen if we receive a MUC invitaiton: when the invitaiton is received, it's from the muc itself ++ //and then kopete will create a temporary contact for it. but it will not be a good contact. ++ kdDebug(JABBER_DEBUG_GLOBAL) << k_funcinfo << "Bad contact will be removed and re-added " << mContact.jid().full() << endl; ++ Kopete::MetaContact *old_mc=mContactItem->contact()->metaContact(); ++ delete mContactItem->contact(); ++ mContactItem = 0L; ++ if(old_mc->contacts().isEmpty() && old_mc!=metaContact) ++ { ++ Kopete::ContactList::self()->removeMetaContact( old_mc ); ++ } ++ ++ } + +- //we must tell to the originating function that no new contact has been added +- return 0L;//mContactItem->contact (); + } + + kdDebug(JABBER_DEBUG_GLOBAL) << k_funcinfo << "Adding new contact " << mContact.jid().full() << endl; diff --git a/net-im/kopete/kopete-0.12.0-r1.ebuild b/net-im/kopete/kopete-0.12.0-r1.ebuild new file mode 100644 index 000000000000..696e21766946 --- /dev/null +++ b/net-im/kopete/kopete-0.12.0-r1.ebuild @@ -0,0 +1,81 @@ +# Copyright 1999-2006 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: /var/cvsroot/gentoo-x86/net-im/kopete/kopete-0.12.0-r1.ebuild,v 1.1 2006/06/15 11:33:13 flameeyes Exp $ + +inherit kde eutils + +MY_P="${P/_/-}" +MY_P="${MY_P/.0/}" + +DESCRIPTION="KDE multi-protocol IM client" +HOMEPAGE="http://kopete.kde.org/" +LICENSE="GPL-2" + +KEYWORDS="~amd64 ~ppc ~x86" +IUSE="jingle sametime ssl xmms xscreensaver kdehiddenvisibility slp" + +SRC_URI="mirror://sourceforge/${PN}/${MY_P}.tar.bz2" + +# The kernel_linux? ( ) conditional dependencies are for webcams, not supported +# on other kernels AFAIK +BOTH_DEPEND="dev-libs/libxslt + dev-libs/libxml2 + net-dns/libidn + >=dev-libs/glib-2 + app-crypt/qca + slp? ( net-libs/openslp ) + jingle? ( + >=media-libs/speex-1.1.6 + dev-libs/expat + ~net-libs/ortp-0.7.1 ) + sametime? ( =net-libs/meanwhile-0.4* ) + xmms? ( media-sound/xmms ) + || ( ( + x11-libs/libX11 + x11-libs/libXext + x11-libs/libXrender + xscreensaver? ( x11-libs/libXScrnSaver ) + ) virtual/x11 ) + kernel_linux? ( virtual/opengl )" + +RDEPEND="${BOTH_DEPEND} + ssl? ( app-crypt/qca-tls ) + !kde-base/kopete + !kde-base/kdenetwork + !net-libs/libjingle" + +DEPEND="${BOTH_DEPEND} + kernel_linux? ( virtual/os-headers ) + || ( ( + x11-proto/videoproto + x11-proto/xextproto + x11-proto/xproto + kernel_linux? ( x11-libs/libXv ) + xscreensaver? ( x11-proto/scrnsaverproto ) + ) virtual/x11 )" + +need-kde 3.4 + +#dev-libs/ilbc-rfc3951: could not see any benifit in it +#sed -i 's:ilbc_found="no":ilbc_found="yes":' ${S}/kopete/protocols/jabber/jingle/configure.in.in + + +src_unpack() { + kde_src_unpack + epatch "${FILESDIR}/${PN}-0.12_alpha1-xscreensaver.patch" + epatch "${FILESDIR}/${PN}-0.12-away.diff" + epatch "${FILESDIR}/${PN}-0.12-jabber-muc-chat.patch" + rm -f ${S}/configure +} + +src_compile() { + # External libgadu support - doesn't work, kopete requires a specific development snapshot of libgadu. + # Maybe we can enable it in the future. + # The nowlistening plugin has xmms support. + local myconf="$(use_enable jingle) + $(use_enable sametime sametime-plugin) + $(use_with xmms) --without-external-libgadu + $(use_with xscreensaver)" + + kde_src_compile +} |