Author: Armin Rigo <[email protected]>
Branch: gc-del
Changeset: r63639:8ea45acf31ec
Date: 2013-04-26 14:22 +0200
http://bitbucket.org/pypy/pypy/changeset/8ea45acf31ec/

Log:    Fix _io.

diff --git a/pypy/module/_io/interp_iobase.py b/pypy/module/_io/interp_iobase.py
--- a/pypy/module/_io/interp_iobase.py
+++ b/pypy/module/_io/interp_iobase.py
@@ -48,6 +48,7 @@
         self.__IOBase_closed = False
         self.streamholder = None # needed by AutoFlusher
         get_autoflushher(space).add(self)
+        self.register_finalizer()
 
     def getdict(self, space):
         return self.w_dict
@@ -60,13 +61,8 @@
             return True
         return False
 
-    def __del__(self):
+    def invoke_finalizer(self):
         self.clear_all_weakrefs()
-        self.enqueue_for_destruction(self.space, W_IOBase.destructor,
-                                     'internal __del__ of ')
-
-    def destructor(self):
-        assert isinstance(self, W_IOBase)
         space = self.space
         w_closed = space.findattr(self, space.wrap('closed'))
         try:
_______________________________________________
pypy-commit mailing list
[email protected]
http://mail.python.org/mailman/listinfo/pypy-commit

Reply via email to