hgext/largefiles/reposetup.py
changeset 24287 f78252429e0a
parent 24276 2720f967a7b1
child 24428 586d33f47dca
--- a/hgext/largefiles/reposetup.py	Thu Mar 12 09:06:45 2015 -0700
+++ b/hgext/largefiles/reposetup.py	Wed Mar 11 21:36:48 2015 -0700
@@ -44,11 +44,12 @@
                         return [lfutil.splitstandin(f) or f for f in filenames]
                     def manifest(self):
                         man1 = super(lfilesctx, self).manifest()
-                        orig = man1.__contains__
-                        def __contains__(self, filename):
-                            return (orig(filename) or
-                                    orig(lfutil.standin(filename)))
-                        man1.__contains__ = __contains__.__get__(man1)
+                        class lfilesmanifest(man1.__class):
+                            def __contains__(self, filename):
+                                orig = super(lfilesmanifest, self).__contains__
+                                return (orig(filename) or
+                                        orig(lfutil.standin(filename)))
+                        man1.__class__ = lfilesmanifest
                         return man1
                     def filectx(self, path, fileid=None, filelog=None):
                         orig = super(lfilesctx, self).filectx