[PATCH 2 of 2] subrepo/svn: cache _wcrev() value in merge()

Patrick Mezard patrick at mezard.eu
Mon Apr 30 10:31:41 CDT 2012


# HG changeset patch
# User Patrick Mezard <patrick at mezard.eu>
# Date 1335798319 -7200
# Branch stable
# Node ID 1f843e8797f2d1c6ae6971eeb79e07be3e449d79
# Parent  8d99310d751a94ce2bfe2c97709f5b7e25d169fe
subrepo/svn: cache _wcrev() value in merge()

diff --git a/mercurial/subrepo.py b/mercurial/subrepo.py
--- a/mercurial/subrepo.py
+++ b/mercurial/subrepo.py
@@ -802,9 +802,10 @@
     def merge(self, state):
         old = self._state[1]
         new = state[1]
-        if new != self._wcrev():
-            dirty = old == self._wcrev() or self._wcchanged()[0]
-            if _updateprompt(self._ui, self, dirty, self._wcrev(), new):
+        wcrev = self._wcrev()
+        if new != wcrev:
+            dirty = old == wcrev or self._wcchanged()[0]
+            if _updateprompt(self._ui, self, dirty, wcrev, new):
                 self.get(state, False)
 
     def push(self, opts):


More information about the Mercurial-devel mailing list