Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/localrepo.py @ 28198:ddc07ddcca94
localrepo: support background closing for wwrite()
So working copy update can pass it in.
author | Gregory Szorc <gregory.szorc@gmail.com> |
---|---|
date | Sat, 20 Feb 2016 15:25:27 -0800 |
parents | ad11edefa7c4 |
children | d77b790bd8d6 |
comparison
equal
deleted
inserted
replaced
28197:2ada62388bb1 | 28198:ddc07ddcca94 |
---|---|
972 data = self.wvfs.readlink(filename) | 972 data = self.wvfs.readlink(filename) |
973 else: | 973 else: |
974 data = self.wvfs.read(filename) | 974 data = self.wvfs.read(filename) |
975 return self._filter(self._encodefilterpats, filename, data) | 975 return self._filter(self._encodefilterpats, filename, data) |
976 | 976 |
977 def wwrite(self, filename, data, flags): | 977 def wwrite(self, filename, data, flags, backgroundclose=False): |
978 """write ``data`` into ``filename`` in the working directory | 978 """write ``data`` into ``filename`` in the working directory |
979 | 979 |
980 This returns length of written (maybe decoded) data. | 980 This returns length of written (maybe decoded) data. |
981 """ | 981 """ |
982 data = self._filter(self._decodefilterpats, filename, data) | 982 data = self._filter(self._decodefilterpats, filename, data) |
983 if 'l' in flags: | 983 if 'l' in flags: |
984 self.wvfs.symlink(data, filename) | 984 self.wvfs.symlink(data, filename) |
985 else: | 985 else: |
986 self.wvfs.write(filename, data) | 986 self.wvfs.write(filename, data, backgroundclose=backgroundclose) |
987 if 'x' in flags: | 987 if 'x' in flags: |
988 self.wvfs.setflags(filename, False, True) | 988 self.wvfs.setflags(filename, False, True) |
989 return len(data) | 989 return len(data) |
990 | 990 |
991 def wwritedata(self, filename, data): | 991 def wwritedata(self, filename, data): |