Author: guido.van.rossum
Date: Sun Oct 28 16:09:42 2007
New Revision: 58699
Modified:
python/branches/py3k-pep3137/Lib/tempfile.py
Log:
Issue 1340 by Amaury Forgeot d'Arc (with help from Christian Heimes,
and my own interpretation).
Don't pass the newline= flag to StringIO in SpooledTemporaryFile.
This avoids doubling newlines when the file is rolled over.
Modified: python/branches/py3k-pep3137/Lib/tempfile.py
==============================================================================
--- python/branches/py3k-pep3137/Lib/tempfile.py (original)
+++ python/branches/py3k-pep3137/Lib/tempfile.py Sun Oct 28 16:09:42 2007
@@ -495,7 +495,10 @@
if 'b' in mode:
self._file = _io.BytesIO()
else:
- self._file = _io.StringIO(encoding=encoding, newline=newline)
+ # Setting newline="\n" avoids newline translation;
+ # this is important because otherwise on Windows we'd
+ # hget double newline translation upon rollover().
+ self._file = _io.StringIO(encoding=encoding, newline="\n")
self._max_size = max_size
self._rolled = False
self._TemporaryFileArgs = {'mode': mode, 'buffering': buffering,
_______________________________________________
Python-3000-checkins mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-3000-checkins