Mercurial > hg
changeset 26199:5411059d93f8
manifest: switch add() to heapq.merge (available in Py2.6+)
author | timeless@mozdev.org |
---|---|
date | Fri, 04 Sep 2015 05:57:58 -0400 |
parents | 1a781a986611 |
children | 461e7b700fdf |
files | mercurial/manifest.py |
diffstat | 1 files changed, 4 insertions(+), 6 deletions(-) [+] |
line wrap: on
line diff
--- a/mercurial/manifest.py Fri Sep 04 05:54:35 2015 -0400 +++ b/mercurial/manifest.py Fri Sep 04 05:57:58 2015 -0400 @@ -9,6 +9,7 @@ import mdiff, parsers, error, revlog, util import array, struct import os +import heapq propertycache = util.propertycache @@ -970,12 +971,9 @@ # revlog layer. _checkforbidden(added) - # combine the changed lists into one list for sorting - work = [(x, False) for x in added] - work.extend((x, True) for x in removed) - # this could use heapq.merge() (from Python 2.6+) or equivalent - # since the lists are already sorted - work.sort() + # combine the changed lists into one sorted iterator + work = heapq.merge([(x, False) for x in added], + [(x, True) for x in removed]) arraytext, deltatext = m.fastdelta(self._mancache[p1][1], work) cachedelta = self.rev(p1), deltatext