##// END OF EJS Templates
windows: fix incorrect detection of broken pipe when writing to pager...
windows: fix incorrect detection of broken pipe when writing to pager Paging e.g. hg incoming on Windows and quitting the pager before the output is consumed will print 'abort: Invalid argument'. This is because the windows error 0xE8 (ERROR_NO_DATA) is mapped to EINVAL even though it is documented as 'The pipe is being closed'. Note that this fix assumes that Windows' last error code is still valid in the exception handler. It works correctly in all my tests. A simpler fix would be to just map EINVAL to EPIPE, like was done is flush previously, but that would be less precise. This error was not observed previously, when pager was an extension.

File last commit:

r38264:46dcb9f1 default
r38575:3a0f322a stable
Show More
Makefile
40 lines | 1.3 KiB | text/x-makefile | MakefileLexer
Augie Fackler
contrib: add some basic scaffolding for some fuzz test targets...
r35688 bdiff.o: ../../mercurial/bdiff.c
clang -g -O1 -fsanitize=fuzzer-no-link,address -c -o bdiff.o \
../../mercurial/bdiff.c
bdiff: bdiff.cc bdiff.o
clang -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \
-I../../mercurial bdiff.cc bdiff.o -o bdiff
bdiff-oss-fuzz.o: ../../mercurial/bdiff.c
$$CC $$CFLAGS -c -o bdiff-oss-fuzz.o ../../mercurial/bdiff.c
bdiff_fuzzer: bdiff.cc bdiff-oss-fuzz.o
$$CXX $$CXXFLAGS -std=c++11 -I../../mercurial bdiff.cc \
bdiff-oss-fuzz.o -lFuzzingEngine -o $$OUT/bdiff_fuzzer
Augie Fackler
fuzz: add a fuzzer for xdiff...
r36697 x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h
clang -g -O1 -fsanitize=fuzzer-no-link,address -c \
-o $@ \
$<
Jun Wu
fuzz: fix xdiff build...
r36783 xdiff: xdiff.cc xdiffi.o xprepare.o xutils.o
Augie Fackler
fuzz: add a fuzzer for xdiff...
r36697 clang -DHG_FUZZER_INCLUDE_MAIN=1 -g -O1 -fsanitize=fuzzer-no-link,address \
-I../../mercurial xdiff.cc \
Jun Wu
fuzz: fix xdiff build...
r36783 xdiffi.o xprepare.o xutils.o -o xdiff
Augie Fackler
contrib: add some basic scaffolding for some fuzz test targets...
r35688
Augie Fackler
fuzz: add a fuzzer for xdiff...
r36697 fuzz-x%.o: ../../mercurial/thirdparty/xdiff/x%.c ../../mercurial/thirdparty/xdiff/*.h
$$CC $$CFLAGS -c \
-o $@ \
$<
Jun Wu
fuzz: fix xdiff build...
r36783 xdiff_fuzzer: xdiff.cc fuzz-xdiffi.o fuzz-xprepare.o fuzz-xutils.o
Augie Fackler
fuzz: add a fuzzer for xdiff...
r36697 $$CXX $$CXXFLAGS -std=c++11 -I../../mercurial xdiff.cc \
Jun Wu
fuzz: fix xdiff build...
r36783 fuzz-xdiffi.o fuzz-xprepare.o fuzz-xutils.o \
Augie Fackler
fuzz: add a fuzzer for xdiff...
r36697 -lFuzzingEngine -o $$OUT/xdiff_fuzzer
all: bdiff xdiff
oss-fuzz: bdiff_fuzzer xdiff_fuzzer
Augie Fackler
contrib: add some basic scaffolding for some fuzz test targets...
r35688
.PHONY: all oss-fuzz