diff --git a/mercurial/hg.py b/mercurial/hg.py --- a/mercurial/hg.py +++ b/mercurial/hg.py @@ -214,6 +214,9 @@ def clone(ui, source, dest=None, pull=Fa else: raise util.Abort(_("clone from remote to remote not supported")) + if dir_cleanup: + dir_cleanup.close() + if dest_repo.local(): fp = dest_repo.opener("hgrc", "w", text=True) fp.write("[paths]\n") @@ -226,8 +229,6 @@ def clone(ui, source, dest=None, pull=Fa except: checkout = dest_repo.changelog.tip() _update(dest_repo, checkout) - if dir_cleanup: - dir_cleanup.close() return src_repo, dest_repo finally: