From d679e09970465d1b914b7d3dc11eaddbbcd6d289 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Tue, 17 Sep 2002 18:10:34 +0000 Subject: [PATCH] write(): Special case the common situation of a stream that's only being used to dump output (no seeks), so we can avoid a lot of extra checks being made. --- Lib/StringIO.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Lib/StringIO.py b/Lib/StringIO.py index 7c4b6c7705c..79ab7e16b32 100644 --- a/Lib/StringIO.py +++ b/Lib/StringIO.py @@ -152,6 +152,10 @@ def write(self, s): # Force s to be a string or unicode if not isinstance(s, basestring): s = str(s) + if self.pos == self.len: + self.buflist.append(s) + self.len = self.pos = self.pos + len(s) + return if self.pos > self.len: self.buflist.append('\0'*(self.pos - self.len)) self.len = self.pos