##// END OF EJS Templates
revlog: extract function for getting node from known-to-exist rev...
revlog: extract function for getting node from known-to-exist rev Many of the calls to index_node() (which converts a rev to a nodeid) are done with a rev that's know to exist. If the function fails, there's something really wrong and we should just abort. This was done in only one place. This patch starts by extracting that code to a function that we can reuse in later patches. Differential Revision: https://phab.mercurial-scm.org/D3456

File last commit:

r37301:d4e62df1 default
r37877:a91f31a1 default
Show More
test-revlog.t
47 lines | 1.3 KiB | text/troff | Tads3Lexer
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390 $ hg init empty-repo
$ cd empty-repo
Flags on revlog version 0 are rejected
>>> with open('.hg/store/00changelog.i', 'wb') as fh:
Pulkit Goyal
py3: add b'' prefixes in tests/test-revlog.t...
r36502 ... fh.write(b'\x00\x01\x00\x00')
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390
$ hg log
Gregory Szorc
revlog: tweak wording and logic for flags validation...
r32391 abort: unknown flags (0x01) in version 0 revlog 00changelog.i!
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390 [255]
Unknown flags on revlog version 1 are rejected
>>> with open('.hg/store/00changelog.i', 'wb') as fh:
Pulkit Goyal
py3: add b'' prefixes in tests/test-revlog.t...
r36502 ... fh.write(b'\x00\x04\x00\x01')
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390
$ hg log
Gregory Szorc
revlog: tweak wording and logic for flags validation...
r32391 abort: unknown flags (0x04) in version 1 revlog 00changelog.i!
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390 [255]
Unknown version is rejected
>>> with open('.hg/store/00changelog.i', 'wb') as fh:
Pulkit Goyal
py3: add b'' prefixes in tests/test-revlog.t...
r36502 ... fh.write(b'\x00\x00\x00\x02')
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390
$ hg log
Gregory Szorc
revlog: tweak wording and logic for flags validation...
r32391 abort: unknown version (2) in revlog 00changelog.i!
Gregory Szorc
tests: tests for revlog version and flags loading...
r32390 [255]
$ cd ..
Matt Mackall
parsers: fix list sizing rounding error (SEC)...
r28656 Test for CVE-2016-3630
$ hg init
Pulkit Goyal
py3: add b'' prefixes in tests/test-revlog.t...
r36502 >>> open("a.i", "wb").write(
... b"""eJxjYGZgZIAAYQYGxhgom+k/FMx8YKx9ZUaKSOyqo4cnuKb8mbqHV5cBCVTMWb1Cwqkhe4Gsg9AD
Matt Mackall
parsers: fix list sizing rounding error (SEC)...
r28656 ... Joa3dYtcYYYBAQ8Qr4OqZAYRICPTSr5WKd/42rV36d+8/VmrNpv7NP1jQAXrQE4BqQUARngwVA=="""
... .decode("base64").decode("zlib"))
$ hg debugindex a.i
Gregory Szorc
debugcommands: drop offset and length from debugindex by default...
r37301 rev linkrev nodeid p1 p2
0 2 99e0332bd498 000000000000 000000000000
1 3 6674f57a23d8 99e0332bd498 000000000000
timeless
mpatch: unify mpatchError (issue5182)...
r28782 $ hg debugdata a.i 1 2>&1 | egrep 'Error:.*decoded'
Yuya Nishihara
mpatch: switch to policy importer
r32371 (mercurial\.\w+\.mpatch\.)?mpatchError: patch cannot be decoded (re)