Show More
@@ -279,25 +279,25 b' class Index2Mixin(object):' | |||
|
279 | 279 | index_format = revlog_constants.INDEX_ENTRY_V2 |
|
280 | 280 | |
|
281 | 281 | def replace_sidedata_info( |
|
282 |
self, |
|
|
282 | self, rev, sidedata_offset, sidedata_length, offset_flags | |
|
283 | 283 | ): |
|
284 | 284 | """ |
|
285 | 285 | Replace an existing index entry's sidedata offset and length with new |
|
286 | 286 | ones. |
|
287 | 287 | This cannot be used outside of the context of sidedata rewriting, |
|
288 |
inside the transaction that creates the revision ` |
|
|
288 | inside the transaction that creates the revision `rev`. | |
|
289 | 289 | """ |
|
290 |
if |
|
|
290 | if rev < 0: | |
|
291 | 291 | raise KeyError |
|
292 |
self._check_index( |
|
|
292 | self._check_index(rev) | |
|
293 | 293 | sidedata_format = b">Qi" |
|
294 | 294 | packed_size = struct.calcsize(sidedata_format) |
|
295 |
if |
|
|
295 | if rev >= self._lgt: | |
|
296 | 296 | packed = _pack(sidedata_format, sidedata_offset, sidedata_length) |
|
297 |
old = self._extra[ |
|
|
297 | old = self._extra[rev - self._lgt] | |
|
298 | 298 | offset_flags = struct.pack(b">Q", offset_flags) |
|
299 | 299 | new = offset_flags + old[8:64] + packed + old[64 + packed_size :] |
|
300 |
self._extra[ |
|
|
300 | self._extra[rev - self._lgt] = new | |
|
301 | 301 | else: |
|
302 | 302 | msg = b"cannot rewrite entries outside of this transaction" |
|
303 | 303 | raise KeyError(msg) |
General Comments 0
You need to be logged in to leave comments.
Login now