Show More
@@ -89,19 +89,20 b' class appender:' | |||
|
89 | 89 | |
|
90 | 90 | class changelog(revlog.revlog): |
|
91 | 91 | def __init__(self, opener): |
|
92 | revlog.revlog.__init__(self, opener, "00changelog.i") | |
|
92 | self._realopener = opener | |
|
93 | self._delayed = False | |
|
94 | revlog.revlog.__init__(self, self._delayopener, "00changelog.i") | |
|
93 | 95 | |
|
94 | 96 | def delayupdate(self): |
|
95 | 97 | "delay visibility of index updates to other readers" |
|
96 |
self._ |
|
|
97 | self.opener = self._delayopener | |
|
98 | self._delayed = True | |
|
98 | 99 | self._delaycount = len(self) |
|
99 | 100 | self._delaybuf = [] |
|
100 | 101 | self._delayname = None |
|
101 | 102 | |
|
102 | 103 | def finalize(self, tr): |
|
103 | 104 | "finalize index updates" |
|
104 | self.opener = self._realopener | |
|
105 | self._delayed = False | |
|
105 | 106 | # move redirected index data back into place |
|
106 | 107 | if self._delayname: |
|
107 | 108 | util.rename(self._delayname + ".a", self._delayname) |
@@ -116,7 +117,7 b' class changelog(revlog.revlog):' | |||
|
116 | 117 | def _delayopener(self, name, mode='r'): |
|
117 | 118 | fp = self._realopener(name, mode) |
|
118 | 119 | # only divert the index |
|
119 | if not name == self.indexfile: | |
|
120 | if not self._delayed or not name == self.indexfile: | |
|
120 | 121 | return fp |
|
121 | 122 | # if we're doing an initial clone, divert to another file |
|
122 | 123 | if self._delaycount == 0: |
General Comments 0
You need to be logged in to leave comments.
Login now