mercurial/merge.py
changeset 2918 db397c38005d
parent 2917 dd032b0f02ac
child 2919 8743188f4d2e
--- a/mercurial/merge.py
+++ b/mercurial/merge.py
@@ -282,7 +282,8 @@ def update(repo, node, branchmerge=False
                 # of that file some time in the past. Thus our
                 # merge will appear as a normal local file
                 # modification.
-                f_len = len(repo.file(f).read(other))
+                fl = repo.file(f)
+                f_len = fl.size(fl.rev(other))
                 repo.dirstate.update([f], 'n', st_size=f_len, st_mtime=-1)
 
     remove.sort()