--- a/hgext/absorb.py Thu Apr 04 13:58:49 2019 +0200
+++ b/hgext/absorb.py Mon Apr 15 22:13:11 2019 -0700
@@ -682,13 +682,12 @@
def commit(self):
"""commit changes. update self.finalnode, self.replacemap"""
- with self.repo.wlock(), self.repo.lock():
- with self.repo.transaction('absorb') as tr:
- self._commitstack()
- self._movebookmarks(tr)
- if self.repo['.'].node() in self.replacemap:
- self._moveworkingdirectoryparent()
- self._cleanupoldcommits()
+ with self.repo.transaction('absorb') as tr:
+ self._commitstack()
+ self._movebookmarks(tr)
+ if self.repo['.'].node() in self.replacemap:
+ self._moveworkingdirectoryparent()
+ self._cleanupoldcommits()
return self.finalnode
def printchunkstats(self):
@@ -1006,6 +1005,11 @@
Returns 0 on success, 1 if all chunks were ignored and nothing amended.
"""
opts = pycompat.byteskwargs(opts)
- state = absorb(ui, repo, pats=pats, opts=opts)
- if sum(s[0] for s in state.chunkstats.values()) == 0:
- return 1
+
+ with repo.wlock(), repo.lock():
+ if not opts['dry_run']:
+ cmdutil.checkunfinished(repo)
+
+ state = absorb(ui, repo, pats=pats, opts=opts)
+ if sum(s[0] for s in state.chunkstats.values()) == 0:
+ return 1