Mercurial > hg-stable
comparison hgext/largefiles/reposetup.py @ 16141:f346de4dff57 stable
largefiles: don't break filesets
author | Dan Villiom Podlaski Christiansen <danchr@gmail.com> |
---|---|
date | Mon, 20 Feb 2012 17:59:48 +0100 |
parents | 41417443b7d0 |
children | d87d9d8a8e03 d8cc67114dc3 |
comparison
equal
deleted
inserted
replaced
16124:0e0060bf2f44 | 16141:f346de4dff57 |
---|---|
61 man1 = super(lfiles_ctx, self).manifest() | 61 man1 = super(lfiles_ctx, self).manifest() |
62 man1.__class__ = lfiles_manifestdict | 62 man1.__class__ = lfiles_manifestdict |
63 return man1 | 63 return man1 |
64 def filectx(self, path, fileid=None, filelog=None): | 64 def filectx(self, path, fileid=None, filelog=None): |
65 try: | 65 try: |
66 result = super(lfiles_ctx, self).filectx(path, | 66 if filelog is not None: |
67 fileid, filelog) | 67 result = super(lfiles_ctx, self).filectx( |
68 path, fileid, filelog) | |
69 else: | |
70 result = super(lfiles_ctx, self).filectx( | |
71 path, fileid) | |
68 except error.LookupError: | 72 except error.LookupError: |
69 # Adding a null character will cause Mercurial to | 73 # Adding a null character will cause Mercurial to |
70 # identify this as a binary file. | 74 # identify this as a binary file. |
71 result = super(lfiles_ctx, self).filectx( | 75 if filelog is not None: |
72 lfutil.standin(path), fileid, filelog) | 76 result = super(lfiles_ctx, self).filectx( |
77 lfutil.standin(path), fileid, filelog) | |
78 else: | |
79 result = super(lfiles_ctx, self).filectx( | |
80 lfutil.standin(path), fileid) | |
73 olddata = result.data | 81 olddata = result.data |
74 result.data = lambda: olddata() + '\0' | 82 result.data = lambda: olddata() + '\0' |
75 return result | 83 return result |
76 ctx.__class__ = lfiles_ctx | 84 ctx.__class__ = lfiles_ctx |
77 return ctx | 85 return ctx |