mercurial/revset.py
changeset 21870 dd716807fd23
parent 21284 3e53a64345c1
child 21893 e967c3b08705
--- a/mercurial/revset.py	Tue Jul 15 00:59:09 2014 +0900
+++ b/mercurial/revset.py	Mon Jul 14 17:55:31 2014 -0500
@@ -2243,11 +2243,7 @@
         """Returns a new object with the substraction of the two collections.
 
         This is part of the mandatory API for smartset."""
-        if isinstance(other, baseset):
-            s = other.set()
-        else:
-            s = set(other)
-        return baseset(self.set() - s)
+        return self.filter(lambda x: x not in other)
 
     def __and__(self, other):
         """Returns a new object with the intersection of the two collections.