changeset 46:f7bbf9d2bbe7

Use a set instead of a dictionary for keeping track of message numbers.
author cmlenz
date Fri, 24 Jun 2005 15:24:17 +0000
parents 80bc0fae3ed1
children 083e848088ee
files bitten/util/beep.py
diffstat 1 files changed, 4 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/bitten/util/beep.py
+++ b/bitten/util/beep.py
@@ -34,6 +34,7 @@
 from email.Message import Message
 import logging
 import socket
+from sets import Set
 import sys
 import time
 
@@ -385,7 +386,7 @@
         self.reply_handlers = {}
 
         self.msgno = cycle_through(0, 2147483647)
-        self.msgnos = {} # message numbers currently in use
+        self.msgnos = Set() # message numbers currently in use
         self.ansnos = {} # answer numbers keyed by msgno, each 0-2147483647
 
         # incoming, outgoing sequence numbers
@@ -436,7 +437,7 @@
             del self.inqueue[msgno]
         if cmd == 'RPY' and msgno in self.msgnos:
             # Final reply using this message number, so dealloc
-            del self.msgnos[msgno]
+            self.msgnos.remove(msgno)
         message = None
         if payload:
             message = email.message_from_string(payload)
@@ -486,7 +487,7 @@
             msgno = self.msgno.next()
             if msgno not in self.msgnos:
                 break
-        self.msgnos[msgno] = True # Flag the chosen message number as in use
+        self.msgnos.add(msgno) # Flag the chosen message number as in use
         if handle_reply is not None:
             self.reply_handlers[msgno] = handle_reply
         self._send('MSG', msgno, None, message)
Copyright (C) 2012-2017 Edgewall Software