mirror of
https://github.com/python/cpython.git
synced 2026-06-24 03:53:12 -04:00
SF patch# 1757683 by Alexandre Vassalotti. Add support for
seeking/writing beyond EOF to io.BytesIO.
This commit is contained in:
@@ -659,6 +659,11 @@ class BytesIO(BufferedIOBase):
|
||||
raise ValueError("write to closed file")
|
||||
n = len(b)
|
||||
newpos = self._pos + n
|
||||
if newpos > len(self._buffer):
|
||||
# Inserts null bytes between the current end of the file
|
||||
# and the new write position.
|
||||
padding = '\x00' * (newpos - len(self._buffer) - n)
|
||||
self._buffer[self._pos:newpos - n] = padding
|
||||
self._buffer[self._pos:newpos] = b
|
||||
self._pos = newpos
|
||||
return n
|
||||
|
||||
Reference in New Issue
Block a user