diff --git a/mercurial/dirstatemap.py b/mercurial/dirstatemap.py
--- a/mercurial/dirstatemap.py
+++ b/mercurial/dirstatemap.py
@@ -162,7 +162,7 @@
             return False
         else:
             self._dirs_decr(f, old_entry=entry, remove_variant=not entry.added)
-            if not entry.merged:
+            if not entry.p2_info:
                 self.copymap.pop(f, None)
             entry.set_untracked()
             self._refresh_entry(f, entry)