changeset 46357:72f5280e33b6

commit: look-up new revision once Look-up by node is slightly more expensive, so since it is necessary more than once, do it explicitly. Differential Revision: https://phab.mercurial-scm.org/D9830
author Joerg Sonnenberger <joerg@bec.de>
date Tue, 19 Jan 2021 00:18:39 +0100
parents 0c95b59a89f1
children 009130064813
files mercurial/commit.py
diffstat 1 files changed, 3 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/mercurial/commit.py	Tue Jan 19 14:00:42 2021 -0800
+++ b/mercurial/commit.py	Tue Jan 19 00:18:39 2021 +0100
@@ -96,6 +96,7 @@
             ctx.date(),
             extra,
         )
+        rev = repo[n].rev()
         xp1, xp2 = p1.hex(), p2 and p2.hex() or b''
         repo.hook(
             b'pretxncommit',
@@ -108,7 +109,7 @@
         targetphase = subrepoutil.newcommitphase(repo.ui, ctx)
 
         # prevent unmarking changesets as public on recommit
-        waspublic = oldtip == repo.changelog.tiprev() and not repo[n].phase()
+        waspublic = oldtip == repo.changelog.tiprev() and not repo[rev].phase()
 
         if targetphase and not waspublic:
             # retract boundary do not alter parent changeset.
@@ -116,7 +117,7 @@
             # be compliant anyway
             #
             # if minimal phase was 0 we don't need to retract anything
-            phases.registernew(repo, tr, targetphase, [repo[n].rev()])
+            phases.registernew(repo, tr, targetphase, [rev])
         return n