[Python-checkins] python/dist/src/Lib socket.py,1.32,1.33

gvanrossum@users.sourceforge.net gvanrossum@users.sourceforge.net
Thu, 08 Aug 2002 11:11:38 -0700


Update of /cvsroot/python/python/dist/src/Lib
In directory usw-pr-cvs1:/tmp/cvs-serv30522

Modified Files:
	socket.py 
Log Message:
The _socketobject class has no need for a __del__ method: all it did was
to delete the reference to self._sock, and the regular destructor will
do that just fine.  This made some hacks in close() unnecessary.

The _fileobject class still has a __del__ method, because it must flush.


Index: socket.py
===================================================================
RCS file: /cvsroot/python/python/dist/src/Lib/socket.py,v
retrieving revision 1.32
retrieving revision 1.33
diff -C2 -d -r1.32 -r1.33
*** socket.py	8 Aug 2002 17:34:19 -0000	1.32
--- socket.py	8 Aug 2002 18:11:36 -0000	1.33
***************
*** 137,140 ****
--- 137,145 ----
      'settimeout', 'gettimeout', 'shutdown')
  
+ class _closedsocket(object):
+     __slots__ = []
+     def __getattr__(self, name):
+         raise error(9, 'Bad file descriptor')
+ 
  class _socketobject(object):
  
***************
*** 143,151 ****
      __slots__ = ["_sock"]
  
-     class _closedsocket(object):
-         __slots__ = []
-         def __getattr__(self, name):
-             raise error(9, 'Bad file descriptor')
- 
      def __init__(self, family=AF_INET, type=SOCK_STREAM, proto=0, _sock=None):
          if _sock is None:
--- 148,151 ----
***************
*** 154,163 ****
  
      def close(self):
!         # Avoid referencing globals here
!         self._sock = self.__class__._closedsocket()
      close.__doc__ = _realsocket.close.__doc__
- 
-     def __del__(self):
-         self.close()
  
      def accept(self):
--- 154,159 ----
  
      def close(self):
!         self._sock = _closedsocket()
      close.__doc__ = _realsocket.close.__doc__
  
      def accept(self):