# HG changeset patch # User Idan Kamara # Date 2012-12-15 18:19:07 # Node ID 3bc21f6daac472b7f4795fa7951f2e4e6458cacb # Parent 7e2b9f6a2cd043966fca50a29a9867fb12387a22 dirstate: don't rename branch file if writing it failed diff --git a/mercurial/dirstate.py b/mercurial/dirstate.py --- a/mercurial/dirstate.py +++ b/mercurial/dirstate.py @@ -265,8 +265,10 @@ class dirstate(object): f = self._opener('branch', 'w', atomictemp=True) try: f.write(self._branch + '\n') - finally: f.close() + except: # re-raises + f.discard() + raise def _read(self): self._map = {}