diff options
author | Tim Peters <tim.peters@gmail.com> | 2001-04-08 07:23:44 (GMT) |
---|---|---|
committer | Tim Peters <tim.peters@gmail.com> | 2001-04-08 07:23:44 (GMT) |
commit | 6fd71206169c48daf9a45fe246b495bb8113fd10 (patch) | |
tree | f6159dc26814c9de526861c3eb9e2963f41e3718 /Lib/asynchat.py | |
parent | cfc21fcf48d97149541d1a5cc8d4ac2e550780fe (diff) | |
download | cpython-6fd71206169c48daf9a45fe246b495bb8113fd10.zip cpython-6fd71206169c48daf9a45fe246b495bb8113fd10.tar.gz cpython-6fd71206169c48daf9a45fe246b495bb8113fd10.tar.bz2 |
Fix from the Madusa mailing list:
http://groups.yahoo.com/group/medusa/message/333
It's clear that Medusa should not be checking for an empty buffer
via "buf is ''". The patch merely changes "is" to "==". However,
there's a mystery here all the same: Python attempts to store null
strings uniquely, so it's unclear why "buf is ''" ever returned
false when buf actually was empty. *Some* string operations produce
non-unique null strings, e.g.
>>> "abc"*0 is "abc"*0
0
>>>
but they're rare, and I don't see any such operations in asynchat.
Diffstat (limited to 'Lib/asynchat.py')
-rw-r--r-- | Lib/asynchat.py | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/Lib/asynchat.py b/Lib/asynchat.py index 584aab9..1f9fc68 100644 --- a/Lib/asynchat.py +++ b/Lib/asynchat.py @@ -165,7 +165,7 @@ class async_chat (asyncore.dispatcher): # return len(self.ac_out_buffer) or len(self.producer_fifo) or (not self.connected) # this is about twice as fast, though not as clear. return not ( - (self.ac_out_buffer is '') and + (self.ac_out_buffer == '') and self.producer_fifo.is_empty() and self.connected ) |