Skip to content

Commit b972a78

Browse files
committed
SF patch# 1757683 by Alexandre Vassalotti. Add support for
seeking/writing beyond EOF to io.BytesIO.
1 parent d4eda82 commit b972a78

File tree

1 file changed

+5
-0
lines changed

1 file changed

+5
-0
lines changed

Lib/io.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -659,6 +659,11 @@ def write(self, b):
659659
raise ValueError("write to closed file")
660660
n = len(b)
661661
newpos = self._pos + n
662+
if newpos > len(self._buffer):
663+
# Inserts null bytes between the current end of the file
664+
# and the new write position.
665+
padding = '\x00' * (newpos - len(self._buffer) - n)
666+
self._buffer[self._pos:newpos - n] = padding
662667
self._buffer[self._pos:newpos] = b
663668
self._pos = newpos
664669
return n

0 commit comments

Comments
 (0)