Patch 1012740: cStringIO's truncate doesn't
truncate() left the stream position unchanged, which meant the
"truncated" data didn't go away:
>>> io.write('abc')
>>> io.truncate(0)
>>> io.write('xyz')
>>> io.getvalue()
'abcxyz'
Patch by Dima Dorfman.
diff --git a/Misc/NEWS b/Misc/NEWS
index a8aee9c..6b1dcff 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -41,6 +41,11 @@
Extension modules
-----------------
+- Patch 1012740: truncate() on a writeable cStringIO now resets the
+ position to the end of the stream. This is consistent with the original
+ StringIO module and avoids inadvertently resurrecting data that was
+ supposed to have been truncated away.
+
- Added socket.socketpair().
Library
@@ -59,7 +64,7 @@
- A new function tkFont.nametofont was added to return an existing
font. The Font class constructor now has an additional exists argument
which, if True, requests to return/configure an existing font, rather
- than creating a new one.
+ than creating a new one.
- Updated the decimal package's min() and max() methods to match the
latest revision of the General Decimal Arithmetic Specification.