diff --git a/mercurial/transaction.py b/mercurial/transaction.py
index e2031c8ca4f8939a21fea454cb64b7a2744d9c8d_bWVyY3VyaWFsL3RyYW5zYWN0aW9uLnB5..c77418938d051c1aa9376de6dde338cb1f3ba400_bWVyY3VyaWFsL3RyYW5zYWN0aW9uLnB5 100644
--- a/mercurial/transaction.py
+++ b/mercurial/transaction.py
@@ -220,6 +220,7 @@
         if self.count != 0:
             return
         self.file.close()
+        self.backupsfile.close()
         self.entries = []
         if self.after:
             self.after()
@@ -243,6 +244,7 @@
         self.count = 0
         self.usages = 0
         self.file.close()
+        self.backupsfile.close()
 
         if self.onabort is not None:
             self.onabort()