[Python-checkins] CVS: python/dist/src/Lib socket.py,1.15,1.16
Guido van Rossum
gvanrossum@users.sourceforge.net
Tue, 18 Dec 2001 14:22:27 -0800
Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv10114
Modified Files:
socket.py
Log Message:
Move the helper class _closedsocket *into* the _socketobject class.
This way, when a socket object is deleted after the socket module has
already been zapped by module shutdown, we don't get annoying warnings
about exceptions in __del__ methods.
Index: socket.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/socket.py,v
retrieving revision 1.15
retrieving revision 1.16
diff -C2 -d -r1.15 -r1.16
*** socket.py 2001/10/29 07:13:53 1.15
--- socket.py 2001/12/18 22:22:25 1.16
***************
*** 130,138 ****
class _socketobject:
def __init__(self, sock):
self._sock = sock
def close(self):
! self._sock = _closedsocket()
def __del__(self):
--- 130,143 ----
class _socketobject:
+ class _closedsocket:
+ def __getattr__(self, name):
+ raise error(9, 'Bad file descriptor')
+
def __init__(self, sock):
self._sock = sock
def close(self):
! # Avoid referencing globals here
! self._sock = self.__class__._closedsocket()
def __del__(self):
***************
*** 152,161 ****
for _m in _socketmethods:
exec _s % (_m, _m)
-
-
- class _closedsocket:
-
- def __getattr__(self, name):
- raise error(9, 'Bad file descriptor')
--- 157,160 ----