Skip to content
Snippets Groups Projects
Commit 78959c8e authored by Durham Goode's avatar Durham Goode
Browse files

wlock: take wlock when writing map file

Upstream Mercurial now has a devel-warning when writing to a file without taking
a lock. Since we already need write access to write the map file, let's take the
wlock as well.
parent 006c837f
No related branches found
No related tags found
No related merge requests found
......@@ -270,8 +270,9 @@
gitsha, hgsha = line.strip().split(' ', 1)
if hgsha in repo:
new_map.append('%s %s\n' % (gitsha, hgsha))
f = repo.vfs(GitHandler.map_file, 'wb')
map(f.write, new_map)
with repo.wlock():
f = repo.vfs(GitHandler.map_file, 'wb')
map(f.write, new_map)
ui.status(_('git commit map cleaned\n'))
def findcommonoutgoing(orig, repo, other, *args, **kwargs):
......
......@@ -197,16 +197,17 @@
self._map_hg_real = map_hg_real
def save_map(self, map_file):
file = self.repo.vfs(map_file, 'w+', atomictemp=True)
map_hg = self._map_hg
buf = cStringIO.StringIO()
bwrite = buf.write
for hgsha, gitsha in map_hg.iteritems():
bwrite("%s %s\n" % (gitsha, hgsha))
file.write(buf.getvalue())
buf.close()
# If this complains, atomictempfile no longer has close
file.close()
with self.repo.wlock():
file = self.repo.vfs(map_file, 'w+', atomictemp=True)
map_hg = self._map_hg
buf = cStringIO.StringIO()
bwrite = buf.write
for hgsha, gitsha in map_hg.iteritems():
bwrite("%s %s\n" % (gitsha, hgsha))
file.write(buf.getvalue())
buf.close()
# If this complains, atomictempfile no longer has close
file.close()
def load_tags(self):
self.tags = {}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment