diff --git a/mercurial/copies.py b/mercurial/copies.py
index 8cd04e37bd1d3fa04b0d038cc65218697d7adb56_bWVyY3VyaWFsL2NvcGllcy5weQ==..46956a24887c198b1148fa4b883c9e35dfb4a76a_bWVyY3VyaWFsL2NvcGllcy5weQ== 100644
--- a/mercurial/copies.py
+++ b/mercurial/copies.py
@@ -408,8 +408,8 @@
                     minor, major = othercopies, newcopies
                 else:
                     minor, major = newcopies, othercopies
-                _merge_copies_dict(minor, major, isancestor, changes)
-                all_copies[c] = minor
+                copies = _merge_copies_dict(minor, major, isancestor, changes)
+                all_copies[c] = copies
 
     final_copies = {}
     for dest, (tt, source) in all_copies[targetrev].items():
@@ -428,6 +428,8 @@
 
     - `ismerged(path)`: callable return True if `path` have been merged in the
                         current revision,
+
+    return the resulting dict (in practice, the "minor" object, updated)
     """
     for dest, value in major.items():
         other = minor.get(dest)
@@ -461,6 +463,7 @@
                     minor[dest] = value
                 elif isancestor(other_tt, new_tt):
                     minor[dest] = value
+    return minor
 
 
 def _revinfo_getter_extra(repo):