diff --git a/mercurial/simplemerge.py b/mercurial/simplemerge.py
--- a/mercurial/simplemerge.py
+++ b/mercurial/simplemerge.py
@@ -425,8 +425,6 @@
     The merged result is written into `localctx`.
     """
     def readctx(ctx):
-        if not ctx:
-            return None
         # Merges were always run in the working copy before, which means
         # they used decoded data, if the user defined any repository
         # filters.