diff -r 553865308b15 -r 05d429fe84ed mercurial/transaction.py --- a/mercurial/transaction.py Thu Jun 01 22:32:21 2023 +0100 +++ b/mercurial/transaction.py Mon Jun 05 11:07:08 2023 +0200 @@ -290,6 +290,8 @@ self._backupjournal = b"%s.backupfiles" % self._journal self._backupsfile = opener.open(self._backupjournal, b'w') self._backupsfile.write(b'%d\n' % version) + # the set of temporary files + self._tmp_files = set() if createmode is not None: opener.chmod(self._journal, createmode & 0o666) @@ -354,6 +356,7 @@ file in self._newfiles or file in self._offsetmap or file in self._backupmap + or file in self._tmp_files ): return if self._queue: @@ -368,6 +371,7 @@ file in self._newfiles or file in self._offsetmap or file in self._backupmap + or file in self._tmp_files ): return if offset: @@ -439,6 +443,7 @@ Such files will be deleted when the transaction exits (on both failure and success). """ + self._tmp_files.add(tmpfile) self._addbackupentry((location, b'', tmpfile, False)) @active