]> git.ipfire.org Git - thirdparty/tornado.git/commitdiff
Delete from the bytearray's front, instead of creating a new object
authorAntoine Pitrou <antoine@python.org>
Tue, 1 Nov 2016 20:50:18 +0000 (21:50 +0100)
committerAntoine Pitrou <antoine@python.org>
Tue, 1 Nov 2016 20:50:18 +0000 (21:50 +0100)
tornado/iostream.py

index c77b78ee031b4030a80858874cd3169fb5afb6a2..081ba2f82dd498aa3681ff4569b2d2fc41b8b0fd 100644 (file)
@@ -848,7 +848,7 @@ class BaseIOStream(object):
                 self._write_buffer_size -= num_bytes
                 # Amortized O(1) shrink
                 if self._write_buffer_pos > self._write_buffer_size:
-                    self._write_buffer = self._write_buffer[self._write_buffer_pos:]
+                    del self._write_buffer[:self._write_buffer_pos]
                     self._write_buffer_pos = 0
             except (socket.error, IOError, OSError) as e:
                 if e.args[0] in _ERRNO_WOULDBLOCK:
@@ -886,7 +886,7 @@ class BaseIOStream(object):
         self._read_buffer_size -= loc
         # Amortized O(1) shrink
         if self._read_buffer_pos > self._read_buffer_size:
-            self._read_buffer = self._read_buffer[self._read_buffer_pos:]
+            del self._read_buffer[:self._read_buffer_pos]
             self._read_buffer_pos = 0
         return b