Shorten the nick negotiation when multiple instances are active.
authorEric S. Raymond <esr@thyrsus.com>
Sat, 1 Sep 2012 12:37:37 +0000 (08:37 -0400)
committerEric S. Raymond <esr@thyrsus.com>
Sat, 1 Sep 2012 12:37:37 +0000 (08:37 -0400)
irker

diff --git a/irker b/irker
index 2d24958d3a58c0d3cecad281942212fb4261cdc6..01d058526e6d39c95930ab1100a1447f21fe9b1e 100755 (executable)
--- a/irker
+++ b/irker
@@ -74,13 +74,13 @@ version = "1.0"
 # <http://www.mirc.com/isupport.html>.
 
 class Connection:
-    def __init__(self, irkerd, servername, port):
+    def __init__(self, irkerd, servername, port, nick_base=1):
         self.irker = irkerd
         self.servername = servername
         self.port = port
+        self.nick_trial = nick_base
         self.connection = None
         self.status = "unseen"
-        self.nick_trial = 1
         self.last_xmit = time.time()
         self.last_ping = time.time()
         self.channels_joined = []
@@ -214,7 +214,8 @@ class Dispatcher:
         if not eligibles:
             newconn = Connection(self.irker,
                                  self.servername,
-                                 self.port)
+                                 self.port,
+                                 len(self.connections)+1)
             self.connections.append(newconn)
             eligibles = [newconn]
         eligibles[0].enqueue(channel, message)