This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author Maxime S
Recipients Maxime S
Date 2015-03-02.14:37:41
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <1425307061.83.0.558328246639.issue23562@psf.upfronthosting.co.za>
In-reply-to
Content
Observed Behavior:

$python3
Python 3.5.0a1+ (default, Mar  2 2015, 14:30:05) 
[GCC 4.6.3] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open("test", "w+")
>>> f.write("Hello World")
11
>>> f.seek(0)
0
>>> f.read(5)
'Hello'
>>> f.write(" people")
7
>>> f.seek(0)
0
>>> f.read()
'Hello World people'


Expected Behavior

According to POSIX, the last f.read() should return "Hello people", like in Python 2:


$ python2
Python 2.7.3 (default, Feb 27 2014, 20:00:17) 
[GCC 4.6.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> f = open("test", "w+")
>>> f.write("Hello World")
>>> f.seek(0)
>>> f.read(5)
'Hello'
>>> f.write(" people")
>>> f.seek(0)
>>> f.read()
'Hello people'

Workaround:

f.seek(f.tell()) immediately after f.read(5) restore the correct behavior.
History
Date User Action Args
2015-03-02 14:37:41Maxime Ssetrecipients: + Maxime S
2015-03-02 14:37:41Maxime Ssetmessageid: <1425307061.83.0.558328246639.issue23562@psf.upfronthosting.co.za>
2015-03-02 14:37:41Maxime Slinkissue23562 messages
2015-03-02 14:37:41Maxime Screate