diff -r bdf7b1ea1dae -r 5dcaed20b27c mercurial/changegroup.py --- a/mercurial/changegroup.py Thu Nov 06 22:33:48 2014 -0800 +++ b/mercurial/changegroup.py Thu Nov 06 22:48:20 2014 -0800 @@ -335,9 +335,6 @@ yield chunk progress(msgbundling, None) - for f in changedfiles: - fnodes[f] = {} - # Callback for the manifest, used to collect linkrevs for filelog # revisions. # Returns the linkrev node (collected in lookupcl). @@ -349,7 +346,7 @@ if f in changedfiles: # record the first changeset introducing this filelog # version - fnodes[f].setdefault(n, clnode) + fnodes.setdefault(f, {}).setdefault(n, clnode) return clnode mfnodes = self.prune(mf, mfs, commonrevs, source)