1 --- pymsn-t/src/legacy/glue.py 2008-09-19 10:53:30.000000000 +0200
2 +++ pymsn-t/src/legacy/glue.py 2008-09-19 10:52:38.000000000 +0200
4 self.session.removeMe()
6 def connectionLost(self, reason):
7 - LogEvent(INFO, self.jabberID)
8 + LogEvent(INFO, self.jabberID)
9 + # If we got a second referral, don't really log out but let the next NS
11 + if reason.type == error.ConnectionDone and self.gotadditionalXFR != 0:
12 + LogEvent(INFO, self.ident)
13 + self.gotadditionalXFR = 0
15 if reason.type != error.ConnectionDone:
16 text = lang.get(self.session.lang).msnDisconnected % reason
17 self.session.sendMessage(to=self.jabberID, fro=config.jid, body=text)
18 --- pymsn-t/src/legacy/msn/msn.py 2008-09-19 10:53:30.000000000 +0200
19 +++ pymsn-t/src/legacy/msn/msn.py 2008-09-19 10:52:38.000000000 +0200
23 if not self._fireCallback(id, host, int(port), params[4]):
24 - raise MSNProtocolError, "Got XFR (referral) that I didn't ask for .. should this happen?" # debug
25 + #raise MSNProtocolError, "Got XFR (referral) that I didn't ask for .. should this happen?" # debug
26 + self.factory.msncon.gotadditionalXFR = 1
27 + self.factory.msncon.connectors.append(reactor.connectTCP(host, int(port), self.factory, bindAddress=(self.factory.msncon.BINDADDRESS, 0)))
29 def handle_RNG(self, params):
30 checkParamLen(len(params), 6, 'RNG')
31 --- pymsn-t/src/legacy/msn/msnw.py 2008-09-19 10:53:30.000000000 +0200
32 +++ pymsn-t/src/legacy/msn/msnw.py 2008-09-19 10:52:38.000000000 +0200
34 LogEvent(INFO, self.ident)
36 def _gotNotificationReferral(self, (host, port)):
37 - self.timeout.cancel()
39 + if self.timeout != None:
40 + self.timeout.cancel()
42 # Create the NotificationClient
43 self.notificationFactory = msn.NotificationFactory()
44 self.notificationFactory.userHandle = self.username