Subtle fix in the read() code which could cause a read broken up in
several pieces to fail...
diff --git a/Objects/fileobject.c b/Objects/fileobject.c
index d07aa69..51752abc 100644
--- a/Objects/fileobject.c
+++ b/Objects/fileobject.c
@@ -469,7 +469,7 @@
 		if (bytesread < buffersize)
 			break;
 		if (bytesrequested < 0) {
-			buffersize = new_buffersize(f, buffersize);
+			buffersize = bytesread + new_buffersize(f, buffersize);
 			if (_PyString_Resize(&v, buffersize) < 0)
 				return NULL;
 		}