skia2/tools
caryclark 2bec26a716 fix security bug
This fix is a tradeoff. It changes intersection to
treat a case where one coincident run is intersected at one point
and the other edge is not as continuing to be a span.

The old code tried to treat this as a single point.
The old code is probably right, but this change alone
made the data structures inconsistent. Later, extending
the coincident runs would fail by incorrectly discarding
the single point intersection.

As a result, this fixes the security test and one other, but
makes a different test fail. Isolating the failure uncovered
a reduced case that fails with and without the change, so
there are more serious problems here. Those problems are
addressed in a separate CL.

Many of the test edits below remove ill-thought out debugging
messaging that fire off global state, which isn't usable
in a multi-threaded test environment.

In the end, with this fix, all existing tests (modulo one
new failure and one new non-failure) pass in debug and
in the extended release test suites.

TBR=reed@google.com
BUG=614248
GOLD_TRYBOT_URL= https://gold.skia.org/search?issue=2018513003

Review-Url: https://codereview.chromium.org/2018513003
2016-05-26 09:01:47 -07:00
..
android Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
copyright
debugger Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
fiddle fiddle: srand(0) before draw(canvas) 2016-05-23 09:02:38 -07:00
flags Add vksrgb config to dm (Vulkan sRGB). Fix help formatting of vk. 2016-05-23 10:11:07 -07:00
gpu Add vksrgb config to dm (Vulkan sRGB). Fix help formatting of vk. 2016-05-23 10:11:07 -07:00
kilobench Implement vulkan fence syncs for nanobench 2016-05-16 14:09:56 -07:00
lua Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
skiaserve Turn ContextInfos returned by GrContextFactory into structs. 2016-05-11 06:33:06 -07:00
skp Add catapult to RecreateSKPs bot's PYTHONPATH 2016-02-27 10:04:57 -08:00
timer SkTime::GetNSecs() 2015-10-23 07:02:06 -07:00
viewer Add Xlib support to viewer 2016-05-23 13:13:36 -07:00
VisualBench Added --deepColor option to SampleApp, triggers creation of a ten-bit/channel 2016-05-05 12:24:31 -07:00
__init__.py
add_codereview_message.py
AndroidSkDebugToStdOut.cpp
BigPathBench.inc Factor out VisualBench timing code into a helper class 2015-10-05 07:23:30 -07:00
build_command_buffer.py build_command_buffer: Don't 'git checkout' when --no-sync 2016-04-25 11:22:41 -07:00
build_shaderc.py Require Android SDK copy of CMake to build Vulkan on Android. 2016-04-29 08:09:43 -07:00
BUILD_simulator.py Fix Google3 fonts. Use fontconfig rather than custom_directory_factory. Add Google3 font caching. 2015-12-01 11:12:05 -08:00
buildbot_spec.json Make VisualBench bot build the visualbench target 2016-05-17 10:26:15 -07:00
buildbot_spec.py Make VisualBench bot build the visualbench target 2016-05-17 10:26:15 -07:00
builder_name_schema.json Add builder_spec.py 2015-07-29 07:38:49 -07:00
builder_name_schema.py Add builder_spec.py 2015-07-29 07:38:49 -07:00
chrome_fuzz.cpp Revert of Delete SkFlattenable::Type (patchset #2 id:20001 of https://codereview.chromium.org/1834303003/ ) 2016-04-04 14:57:19 -07:00
compare_codereview.py
coverage.sh
CrashHandler.cpp Don't convert DWORD to int. 2016-03-19 15:51:05 -07:00
CrashHandler.h
create_test_font.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
dm_flags.json Revert of Blacklist HTC.dng on 32-bit Win CPU bots (patchset #1 id:1 of https://codereview.chromium.org/1995703002/ ) 2016-05-23 14:35:52 -07:00
dm_flags.py Revert of Blacklist HTC.dng on 32-bit Win CPU bots (patchset #1 id:1 of https://codereview.chromium.org/1995703002/ ) 2016-05-23 14:35:52 -07:00
doxygen_footer.txt
dump_record.cpp return pictures as sk_sp 2016-03-18 07:25:55 -07:00
DumpRecord.cpp SkRecord: infer return type for visit() and mutate(). 2016-03-22 11:46:53 -07:00
DumpRecord.h
embed_resources.py
find_run_binary.py
fix_pythonpath.py
gcov_shim
gen_bench_expectations_from_codereview.py
generate_fir_coeff.py
generate_includes_cpp.py
generate_vk_interface.sh Add vulkan files into skia repo. This is an incomplete backend with only partial functionality at this time. 2016-02-22 09:56:40 -05:00
get_images_from_skps.cpp Treat kIncompleteInput as successes in get_images_from_skps 2016-04-27 07:31:23 -07:00
git-skia-verify
git-sync-deps tools/git-sync-deps: fix error in git syntax for changing origin 2016-01-28 09:12:52 -08:00
gpuveto.cpp SkPictureGpuAnalyzer 2016-05-13 11:40:07 -07:00
imgblur.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
imgslice.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
install_dependencies.sh doc: add quickstart to linux and macos 2015-04-28 13:06:54 -07:00
iOSShell.cpp Make SkGraphics::Term a no-op, stop calling it. 2015-09-09 07:35:42 -07:00
iOSShell.h
jsondiff.py
llvm_coverage_build llvm_coverage_build: Use CC and CXX variables by default 2015-07-17 07:31:07 -07:00
llvm_coverage_run.py Split llvm_coverage_run into two scripts 2015-07-20 09:43:36 -07:00
llvm_coverage.sh Add scripts for running LLVM coverage 2015-07-06 07:43:58 -07:00
lsan.supp
merge_static_libs.py
milestone.py SkPDF: milestone in metadata, also SkMilestone.h 2016-03-29 09:09:29 -07:00
mirror-dev.sh
misc_utils.py
nanobench_flags.json Add exclusion for keymobi_shop_mobileweb_ebay_com.skp on N5 2016-04-06 08:35:15 -07:00
nanobench_flags.py Add exclusion for keymobi_shop_mobileweb_ebay_com.skp on N5 2016-04-06 08:35:15 -07:00
OverwriteLine.h
parse_llvm_coverage.py Walk through files in parse_llvm_coverage.py instead of using 'git ls-files' 2016-04-18 04:18:56 -07:00
pathops_sorter.htm More conic-specific tests revealed a few conic-specific bugs. Because javascript / canvas make visualizing conics tricky, new native tools are required. 2015-10-30 12:03:06 -07:00
pathops_visualizer.htm fix security bug 2016-05-26 09:01:47 -07:00
pdf-comparison.sh tools/pdf-comparison.sh: stop relying on /usr/bin/timeout 2016-04-27 07:44:03 -07:00
picture_utils.cpp Move DM png code to picture_utils, for use by other tools. 2016-04-19 09:18:11 -07:00
picture_utils.h Move DM png code to picture_utils, for use by other tools. 2016-04-19 09:18:11 -07:00
pinspect.cpp Repurpose Release_Developer BUILDTYPE and remove SK_DEVELOPER. 2016-04-29 06:41:35 -07:00
ProcStats.cpp Looks like rssPages * pageSize is overflowing on 32-bit Linux... 2015-04-30 07:35:28 -07:00
ProcStats.h DM+nanobench: print both current and max RSS. 2015-04-30 07:11:22 -07:00
random_parse_path.cpp Add unit test to feed valid SVG sequences to make sure that 2016-02-09 10:30:22 -08:00
random_parse_path.h Add unit test to feed valid SVG sequences to make sure that 2016-02-09 10:30:22 -08:00
reformat-json.py
Resources.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
Resources.h Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
retrieve_from_googlesource.py
sanitize_source_files.py
sk_tool_utils_flags.h
sk_tool_utils_font.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
sk_tool_utils.cpp Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
sk_tool_utils.h Move SkTypeface to sk_sp. 2016-05-12 10:09:31 -07:00
skdiff_html.cpp
skdiff_html.h
skdiff_image.cpp Remove uses of SkImageDecoder from skdiff 2016-03-17 07:17:54 -07:00
skdiff_main.cpp Create output directory in skdiff 2016-04-05 11:37:49 -07:00
skdiff_utils.cpp Remove uses of SkImageDecoder from skdiff 2016-03-17 07:17:54 -07:00
skdiff_utils.h Remove uses of SkImageDecoder from skdiff 2016-03-17 07:17:54 -07:00
skdiff.cpp
skdiff.h Move SkTDArray to private. 2016-02-18 08:53:33 -08:00
skhello.cpp documentation: SkDocument::MakePDF() 2016-05-03 12:10:04 -07:00
skpinfo.cpp Make skpinfo more human friendly 2016-04-19 09:29:01 -07:00
skpmaker.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
Stats.h Consolidate SK_CRASH and sk_throw into SK_ABORT 2016-01-29 08:51:04 -08:00
test_all.py
test_font_data_chars.cpp
test_font_data.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
test_font_index.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
test_font_monospace.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
test_font_sans_serif.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
test_font_serif.cpp Style bikeshed - remove extraneous whitespace 2016-03-29 09:03:53 -07:00
test_gpuveto.py
test_pdfs.py
ThermalManager.cpp enable ThermalManager on Android 2016-02-11 11:42:19 -08:00
ThermalManager.h Move SkTArray to include/private. 2016-02-17 13:13:44 -08:00
tsan.supp Clean up SkFontConfigInterface implementation. 2016-05-02 11:54:13 -07:00
ubsan.supp Add tools/ubsan.supp. 2015-08-05 10:12:33 -04:00
UrlDataManager.cpp Create image cache for use by json canvas 2016-02-08 07:08:21 -08:00
UrlDataManager.h Create image cache for use by json canvas 2016-02-08 07:08:21 -08:00
using_skia_and_harfbuzz.cpp using_skia_and_harfbuzz: compile w/ Android NDK 2016-05-12 10:09:58 -07:00
valgrind.supp Suppress jpeg valgrind errors 2016-01-27 12:05:27 -08:00
visualize_color_gamut.cpp Simple program for visualizing gamuts 2016-05-13 07:32:59 -07:00
whitelist_typefaces.cpp Suppress embedding fonts when the skp's fonts match the OS fonts. 2015-08-31 09:22:38 -07:00
win_dbghelp.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
win_dbghelp.h
win_lcid.cpp Style Change: NULL->nullptr 2015-08-27 07:41:16 -07:00
xsan_build MSAN: build libc++ with MSAN, link to it. 2016-02-16 14:03:15 -08:00
xsan.blacklist Remove size check from SkCodec 2016-01-13 10:54:20 -08:00