D6544: logcmdutil: also check for copies in null revision and working copy

martinvonz (Martin von Zweigbergk) phabricator at mercurial-scm.org
Wed Jun 19 18:32:07 UTC 2019


martinvonz created this revision.
Herald added a subscriber: mercurial-devel.
Herald added a reviewer: hg-reviewers.

REVISION SUMMARY
  It's safe (and fast) to look for copies in the null revision, and it's
  incorrect not to look for them in the working copy, so let's look in
  both places.

REPOSITORY
  rHG Mercurial

REVISION DETAIL
  https://phab.mercurial-scm.org/D6544

AFFECTED FILES
  mercurial/logcmdutil.py
  tests/test-status.t

CHANGE DETAILS

diff --git a/tests/test-status.t b/tests/test-status.t
--- a/tests/test-status.t
+++ b/tests/test-status.t
@@ -630,7 +630,6 @@
     b
   R b
   
-BROKEN: as above, 'a' should be marked a copy
   $ hg log -GTstatus -r 'wdir()' -C
   o  changeset:   2147483647:ffffffffffff
   |  parent:      0:8c55c58b4c0e
@@ -638,6 +637,7 @@
      date:        * (glob)
      files:
      M a
+       b
      R b
   
 
diff --git a/mercurial/logcmdutil.py b/mercurial/logcmdutil.py
--- a/mercurial/logcmdutil.py
+++ b/mercurial/logcmdutil.py
@@ -891,7 +891,7 @@
     for rev, type, ctx, parents in dag:
         char = formatnode(repo, ctx)
         copies = None
-        if getrenamed and ctx.rev():
+        if getrenamed:
             copies = []
             for fn in ctx.files():
                 rename = getrenamed(fn, ctx.rev())
@@ -919,7 +919,7 @@
     for rev in revs:
         ctx = repo[rev]
         copies = None
-        if getrenamed is not None and rev:
+        if getrenamed is not None:
             copies = []
             for fn in ctx.files():
                 rename = getrenamed(fn, rev)



To: martinvonz, #hg-reviewers
Cc: mercurial-devel


More information about the Mercurial-devel mailing list