--- a/mercurial/mail.py Mon Apr 19 21:31:24 2021 -0700
+++ b/mercurial/mail.py Tue Apr 20 00:23:56 2021 -0400
@@ -208,17 +208,16 @@
def _mbox(mbox, sender, recipients, msg):
'''write mails to mbox'''
- fp = open(mbox, b'ab+')
- # Should be time.asctime(), but Windows prints 2-characters day
- # of month instead of one. Make them print the same thing.
- date = time.strftime('%a %b %d %H:%M:%S %Y', time.localtime())
- fp.write(
- b'From %s %s\n'
- % (encoding.strtolocal(sender), encoding.strtolocal(date))
- )
- fp.write(msg)
- fp.write(b'\n\n')
- fp.close()
+ with open(mbox, b'ab+') as fp:
+ # Should be time.asctime(), but Windows prints 2-characters day
+ # of month instead of one. Make them print the same thing.
+ date = time.strftime('%a %b %d %H:%M:%S %Y', time.localtime())
+ fp.write(
+ b'From %s %s\n'
+ % (encoding.strtolocal(sender), encoding.strtolocal(date))
+ )
+ fp.write(msg)
+ fp.write(b'\n\n')
def connect(ui, mbox=None):