mirror of
https://github.com/python/cpython.git
synced 2026-01-27 05:05:50 +00:00
(Merge 3.4) Issue #11259: asynchat.async_chat().set_terminator() now raises a
ValueError if the number of received bytes is negative.
This commit is contained in:
commit
db5f8fcde6
@ -99,6 +99,8 @@ class async_chat(asyncore.dispatcher):
|
||||
"""
|
||||
if isinstance(term, str) and self.use_encoding:
|
||||
term = bytes(term, self.encoding)
|
||||
elif isinstance(term, int) and term < 0:
|
||||
raise ValueError('the number of received bytes must be positive')
|
||||
self.terminator = term
|
||||
|
||||
def get_terminator(self):
|
||||
|
||||
@ -311,5 +311,13 @@ class TestFifo(unittest.TestCase):
|
||||
self.assertEqual(f.pop(), (0, None))
|
||||
|
||||
|
||||
class TestNotConnected(unittest.TestCase):
|
||||
def test_disallow_negative_terminator(self):
|
||||
# Issue #11259
|
||||
client = asynchat.async_chat()
|
||||
self.assertRaises(ValueError, client.set_terminator, -1)
|
||||
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
unittest.main()
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user