tag 569767 +patch
thanks

The attached patch is taken roughly from upstream's fix, but fits the
current unstable package. It would do in the interim until a new upstream
release is made (seeing it applied before then would be great, since I
think this will get many people).

I've tested it without any side-effects so far.

HTH,

-- 
Jonathan Wiltshire

1024D: 0xDB800B52 / 4216 F01F DCA9 21AC F3D3  A903 CA6B EA3E DB80 0B52
4096R: 0xD3524C51 / 0A55 B7C5 1223 3942 86EC  74C3 5394 479D D352 4C51
only in patch2:
unchanged:
--- gajim-0.13.2.orig/src/common/connection_handlers.py
+++ gajim-0.13.2/src/common/connection_handlers.py
@@ -1182,9 +1182,14 @@
 			else:
 				if iq_obj.getErrorCode() not in ('403', '406', '404'):
 					self.private_storage_supported = False
+			
 			# We can now continue connection by requesting the roster
-			version = gajim.config.get_per('accounts', self.name,
-				'roster_version')
+			version = None
+			if con.Stream.features.getTag('ver',
+			namespace=common.xmpp.NS_ROSTER_VER):
+				version = gajim.config.get_per('accounts', self.name,
+					'roster_version')
+
 			iq_id = self.connection.initRoster(version=version)
 			self.awaiting_answers[iq_id] = (ROSTER_ARRIVED, )
 		elif self.awaiting_answers[id_][0] == ROSTER_ARRIVED:
only in patch2:
unchanged:
--- gajim-0.13.2.orig/src/common/xmpp/protocol.py
+++ gajim-0.13.2/src/common/xmpp/protocol.py
@@ -86,6 +86,7 @@
 NS_REGISTER	 ='jabber:iq:register'
 NS_ROSTER	   ='jabber:iq:roster'
 NS_ROSTERX	  ='http://jabber.org/protocol/rosterx'				   # XEP-0144
+NS_ROSTER_VER	='urn:xmpp:features:rosterver'			# XEP-0273
 NS_RPC		  ='jabber:iq:rpc'										# XEP-0009
 NS_SASL		 ='urn:ietf:params:xml:ns:xmpp-sasl'
 NS_SEARCH	   ='jabber:iq:search'
only in patch2:
unchanged:
--- gajim-0.13.2.orig/src/common/xmpp/roster_nb.py
+++ gajim-0.13.2/src/common/xmpp/roster_nb.py
@@ -36,7 +36,7 @@
 		You can also use mapping interface for access to the internal representation of
 		contacts in roster.
 		'''
-	def __init__(self, version=''):
+	def __init__(self, version=None):
 		''' Init internal variables. '''
 		PlugIn.__init__(self)
 		self.version = version
@@ -52,7 +52,8 @@
 		elif not force: return
 
 		iq = Iq('get',NS_ROSTER)
-		iq.setTagAttr('query', 'ver', self.version)
+		if self.version is not None:
+			iq.setTagAttr('query', 'ver', self.version)
 		id_ = self._owner.getAnID()
 		iq.setID(id_)
 		self._owner.send(iq)

Attachment: signature.asc
Description: Digital signature

Reply via email to