mercurial/localrepo.py
changeset 23630 b9af235810cc
parent 23561 3c2419e07df5
child 23648 915ac9403e13
--- a/mercurial/localrepo.py	Tue Dec 16 14:34:53 2014 -0800
+++ b/mercurial/localrepo.py	Thu Dec 18 11:30:10 2014 -0800
@@ -454,6 +454,10 @@
     def __getitem__(self, changeid):
         if changeid is None:
             return context.workingctx(self)
+        if isinstance(changeid, slice):
+            return [context.changectx(self, i)
+                    for i in xrange(*changeid.indices(len(self)))
+                    if i not in self.changelog.filteredrevs]
         return context.changectx(self, changeid)
 
     def __contains__(self, changeid):