import: get lock and wlock one time
this makes import of many patches 6x faster in kernel repo.
--- a/mercurial/commands.py Fri Aug 11 09:11:54 2006 +0200
+++ b/mercurial/commands.py Fri Aug 11 14:50:41 2006 -0700
@@ -1822,6 +1822,9 @@
'retrieving revision [0-9]+(\.[0-9]+)*$|' +
'(---|\*\*\*)[ \t])', re.MULTILINE)
+ wlock = repo.wlock()
+ lock = repo.lock()
+
for patch in patches:
pf = os.path.join(d, patch)
@@ -1910,8 +1913,8 @@
cwd = repo.getcwd()
if cwd:
cfiles = [util.pathto(cwd, f) for f in files]
- addremove_lock(ui, repo, cfiles, {})
- repo.commit(files, message, user, date)
+ addremove_lock(ui, repo, cfiles, {}, wlock=wlock)
+ repo.commit(files, message, user, date, wlock=wlock, lock=lock)
finally:
os.unlink(tmpname)