[Python-checkins] python/dist/src/Lib socket.py,1.24,1.25

gvanrossum@users.sourceforge.net gvanrossum@users.sourceforge.net
2002年8月07日 08:46:21 -0700


Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv29169
Modified Files:
	socket.py 
Log Message:
"Unbuffered" mode of class _fileobject wasn't actually unbuffered,
and this broke a Zope "pipelining" test which read multiple responses
from the same connection (this attaches a new file object to the
socket for each response). Added a test for this too.
(I want to do some code cleanup too, but I thought I'd first fix
the problem with as little code as possible, and add a unit test
for this case. So that's what this checkin is about.)
Index: socket.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/socket.py,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** socket.py	31 Jul 2002 17:48:02 -0000	1.24
--- socket.py	7 Aug 2002 15:46:19 -0000	1.25
***************
*** 175,183 ****
 """Implements a file object on top of a regular socket object."""
 
! def __init__(self, sock, mode='rb', bufsize=8192):
 self._sock = sock
 self._mode = mode
 if bufsize <= 0:
! bufsize = 512
 self._rbufsize = bufsize
 self._wbufsize = bufsize
--- 175,186 ----
 """Implements a file object on top of a regular socket object."""
 
! def __init__(self, sock, mode='rb', bufsize=-1):
 self._sock = sock
 self._mode = mode
 if bufsize <= 0:
! 	 if bufsize == 0:
! 	 bufsize = 1 # Unbuffered mode
! 	 else:
! bufsize = 8192
 self._rbufsize = bufsize
 self._wbufsize = bufsize

AltStyle によって変換されたページ (->オリジナル) /