From 24641b6efe10d4faebf5cc4eec60517120101a49 Mon Sep 17 00:00:00 2001 From: Jeremy Fincher Date: Wed, 29 Sep 2004 14:35:58 +0000 Subject: [PATCH] Fixed bug #1020925. --- src/twistedDrivers.py | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/twistedDrivers.py b/src/twistedDrivers.py index 01cb075cb..34ba698b5 100644 --- a/src/twistedDrivers.py +++ b/src/twistedDrivers.py @@ -72,15 +72,19 @@ class SupyIrcProtocol(LineReceiver): self.transport.write(str(msg)) self.mostRecentCall = reactor.callLater(1, self.checkIrcForMsgs) - def connectionLost(self, failure): - self.irc.reset() + def connectionLost(self, r): self.mostRecentCall.cancel() - drivers.log.disconnect(self.factory.currentServer, errorMsg(failure)) + if not r.check(error.ConnectionDone): + drivers.log.disconnect(self.factory.currentServer, errorMsg(r)) + else: + drivers.log.disconnect(self.factory.currentServer) if self.irc.zombie: # Let's take and take and take until our IRC is DESTROYED! x = 1 while x: x = self.irc.takeMsg() + else: + self.irc.reset() def connectionMade(self): self.factory.resetDelay() @@ -125,10 +129,7 @@ class SupyReconnectingFactory(ReconnectingClientFactory, drivers.ServersMixin): protocol = ReconnectingClientFactory.buildProtocol(self, addr) protocol.irc = self.irc return protocol - - def die(self): - pass - + Driver = SupyReconnectingFactory try: