mercurial/util.py
changeset 15057 774da7121fc9
parent 15050 ff3e93686306
child 15058 81f33be0ea79
--- a/mercurial/util.py	Wed Aug 24 05:42:41 2011 -0400
+++ b/mercurial/util.py	Thu Aug 25 20:21:04 2011 -0400
@@ -745,11 +745,10 @@
     '''writeable file object that atomically updates a file
 
     All writes will go to a temporary copy of the original file. Call
-    rename() when you are done writing, and atomictempfile will rename
-    the temporary copy to the original name, making the changes visible.
-
-    Unlike other file-like objects, close() discards your writes by
-    simply deleting the temporary file.
+    close() when you are done writing, and atomictempfile will rename
+    the temporary copy to the original name, making the changes
+    visible. If the object is destroyed without being closed, all your
+    writes are discarded.
     '''
     def __init__(self, name, mode='w+b', createmode=None):
         self.__name = name      # permanent name
@@ -761,12 +760,12 @@
         self.write = self._fp.write
         self.fileno = self._fp.fileno
 
-    def rename(self):
+    def close(self):
         if not self._fp.closed:
             self._fp.close()
             rename(self._tempname, localpath(self.__name))
 
-    def close(self):
+    def discard(self):
         if not self._fp.closed:
             try:
                 os.unlink(self._tempname)
@@ -776,7 +775,7 @@
 
     def __del__(self):
         if safehasattr(self, '_fp'): # constructor actually did something
-            self.close()
+            self.discard()
 
 def makedirs(name, mode=None):
     """recursive directory creation with parent mode inheritance"""