##// END OF EJS Templates
profiler: flush after writing the profiler output...
profiler: flush after writing the profiler output Otherwise, the profiler output might only partially appears until the next flush of the buffer. Since profiling often happens for long operation, the next flush can be a long time away.

File last commit:

r49730:6000f5b2 default
r52481:1574718f default
Show More
revlog_corpus.py
23 lines | 812 B | text/x-python | PythonLexer
Augie Fackler
fuzz: new fuzzer for revlog's parse_index2 method...
r41050 import argparse
import os
import zipfile
ap = argparse.ArgumentParser()
ap.add_argument("out", metavar="some.zip", type=str, nargs=1)
args = ap.parse_args()
Augie Fackler
formatting: blacken the codebase...
r43346 reporoot = os.path.normpath(os.path.join(os.path.dirname(__file__), '..', '..'))
Augie Fackler
fuzz: new fuzzer for revlog's parse_index2 method...
r41050 # typically a standalone index
changelog = os.path.join(reporoot, '.hg', 'store', '00changelog.i')
# an inline revlog with only a few revisions
contributing = os.path.join(
Augie Fackler
formatting: blacken the codebase...
r43346 reporoot, '.hg', 'store', 'data', 'contrib', 'fuzz', 'mpatch.cc.i'
)
Augie Fackler
fuzz: new fuzzer for revlog's parse_index2 method...
r41050
with zipfile.ZipFile(args.out[0], "w", zipfile.ZIP_STORED) as zf:
if os.path.exists(changelog):
Kyle Lippincott
fuzz: fix test-fuzz-targets.t to run with python3...
r44288 with open(changelog, 'rb') as f:
Augie Fackler
fuzz: new fuzzer for revlog's parse_index2 method...
r41050 zf.writestr("00changelog.i", f.read())
if os.path.exists(contributing):
Kyle Lippincott
fuzz: fix test-fuzz-targets.t to run with python3...
r44288 with open(contributing, 'rb') as f:
Augie Fackler
fuzz: new fuzzer for revlog's parse_index2 method...
r41050 zf.writestr("contributing.i", f.read())