skia2/tools
Brian Osman 9e4e4c7e97 Reland "Switch persistent cache to use SkReadBuffer/SkWriteBuffer"
These are much safer than SkReader32/SkWriter32 (they do validation and
ensure we never read past the end of the buffer).

Where we used to just assert that the contents of the cache were valid,
we now validate everything, and fail gracefully by discarding the cache
contents if it's corrupted or invalid.

Reland includes a new skipByteArray API. The previous technique for
reading into an std::string relied on data(), which doesn't return a
writeable pointer until the C++17 standard library.

Bug: skia:9402
Change-Id: I3b88efbf8ca590c8ad4f8164f7c07eee12696ec6
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/295441
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2020-06-10 14:55:37 +00:00
..
android [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
calmbench [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
copyright Fix pylint check in presubmit 2018-06-22 14:38:28 +00:00
debugger Revert "Revert "move onto new factories for SkMatrix"" 2020-05-21 16:58:39 +00:00
doxygen Make OUTPUT_DIRECTORY in ProdDoxyfile configurable 2019-12-18 16:46:25 +00:00
fiddle Remove SkSurface::MakeFromBackendTextureAsRenderTarget from public API 2020-05-29 15:09:52 +00:00
flags Revert "Allow printf-style formatting to be used in SK_ABORT." 2020-06-01 19:32:08 +00:00
fm Revert "Allow printf-style formatting to be used in SK_ABORT." 2020-06-01 19:32:08 +00:00
fonts Correct TestTypeface::onCharsToGlyphs signature. 2020-05-19 19:55:25 +00:00
gdb Update gdb bitmap viewer. 2018-06-20 21:24:27 +00:00
gpu Reland "Switch persistent cache to use SkReadBuffer/SkWriteBuffer" 2020-06-10 14:55:37 +00:00
infra [infra] Use "mod download" and "install", not "get" in chrome_release_branch 2019-12-06 11:16:41 +00:00
lottie-web-perf Add blocklist command line parameter 2019-09-06 21:07:20 +00:00
lottiecap [LottieWeb] Fix frames 2018-08-29 17:58:42 +00:00
lua [Tree Status] Update all references in Skia repo to tree-status 2020-03-02 18:43:49 +00:00
malisc Extend --writeShaders to output SPIR-V 2019-04-15 14:04:18 +00:00
mdbviz Reland "Merge GrOpList and GrRTOpList and rename to GrOpsTask." 2019-08-22 20:52:09 +00:00
perf-canvaskit-puppeteer Add puppeteer perf for performance degredation related to transforming a complex path. Translations 2020-05-29 20:17:14 +00:00
rebaseline [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
sk_app Add support for vk image sharing mode and handle queues xfers correctly. 2020-06-02 15:58:28 +00:00
skdiff Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
skiaserve Revert "Revert "Revert "Revert "Don't build GL on Metal, Vulkan, Dawn, Direct3D bots"""" 2020-03-20 17:11:58 +00:00
skottie_ios_app Reland "Remove deprecated flush calls." 2020-05-20 15:48:46 +00:00
skottie-wasm-perf [canvaskit] Fix some other usages of .ready 2020-05-21 14:52:53 +00:00
skp [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
skpbench Reland "Update skpbench to let the gpu thread run alongside the recording threads" 2020-05-18 15:12:47 +00:00
skqp Remove SkAtlasTextTarget 2020-06-04 03:52:35 +00:00
skui update skstd 2020-04-30 15:05:43 +00:00
svg [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
timer Adapt GrRectBlur for cases with rect W/H less than six sigma. 2019-09-10 14:39:07 +00:00
trace Remove SkTMin and SkTMax 2020-02-07 18:40:09 +00:00
viewer Reland "Switch persistent cache to use SkReadBuffer/SkWriteBuffer" 2020-06-10 14:55:37 +00:00
__init__.py Add bench_pictures config 2012-12-12 20:13:26 +00:00
abandon_gerrit_cls.py Add wrapper script to call tool to bulk abandon Gerrit CLs 2020-03-11 18:50:57 +00:00
add_codereview_message.py Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
AndroidSkDebugToStdOut.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
AutoreleasePool.h Reland "Added AutoreleasePool for managing pool memory in testing apps." 2019-05-31 15:40:01 +00:00
AutoreleasePool.mm Reland "Added AutoreleasePool for managing pool memory in testing apps." 2019-05-31 15:40:01 +00:00
BigPathBench.inc Factor out VisualBench timing code into a helper class 2015-10-05 07:23:30 -07:00
blob_cache_sim.cpp SkRemoteGlyphCache Add tracing to diff canvas 2019-10-24 17:09:31 +00:00
build_command_buffer.py Improvements to build_command_buffer.py 2016-11-04 10:54:54 -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
build_workaround_header.py Add CheckGeneratedFiles recipe check for gpu workarounds 2018-04-25 19:26:27 +00:00
check-headers-self-sufficient rm SkPreConfig.h and SkPostConfig.h 2020-02-06 19:16:43 +00:00
chrome_fuzz.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
chrome_release_branch [infra] Add chrome_release_branch script 2019-04-16 19:46:10 +00:00
chrome_release_branch.bat [infra] Add chrome_release_branch script 2019-04-16 19:46:10 +00:00
chrome_release_branch.py [infra] chrome_release_branch: maintain the last 3 branches 2020-05-13 18:13:13 +00:00
clang-tidy.sh don't run clang-tidy on third_party 2020-03-30 15:26:32 +00:00
compare_codereview.py Further tweak compare_codereview.py. 2014-03-25 18:02:17 +00:00
convert-to-nia.cpp Add convert-to-nia command-line program 2020-05-28 15:08:08 +00:00
cpu_modules.cpp Particle cleanup: split SkParticleBinding out of SkParticleEffect 2019-08-30 15:32:38 +00:00
CrashHandler.cpp SKQP Build for Fuchsia SDK 2019-11-18 12:34:28 +00:00
CrashHandler.h rewrite ambiguous comment 2015-02-10 07:47:31 -08:00
DDLPromiseImageHelper.cpp Add finisehd proc to backend texture creation. 2020-05-06 16:50:33 +00:00
DDLPromiseImageHelper.h Create DDL for final composition step in DDL test harness 2020-04-24 12:16:34 +00:00
DDLTileHelper.cpp Update DDL test harness to better match OOP-R 2020-05-29 15:58:05 +00:00
DDLTileHelper.h Update DDL test harness to better match OOP-R 2020-05-29 15:58:05 +00:00
doxygen_footer.txt Fix update-doxygen, which fails when skia-autogen is reset 2012-09-26 16:09:43 +00:00
dump_record.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
DumpRecord.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
DumpRecord.h Factor out DumpRecord method from dump_record tool for later use 2014-05-15 16:10:37 +00:00
embed_resources.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
find_run_binary.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
fix_pythonpath.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
force_older_glibc_math.h roll cast toolchain 2019-08-15 20:02:18 +00:00
gcov_shim add a way to get code coverage 2013-09-13 19:32:43 +00:00
get_current_monitor_profile.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
get_images_from_skps.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
git-sync-deps tools/git-sync-deps works with either python 2020-01-10 16:30:11 +00:00
HashAndEncode.cpp basic, untested BGR 1010102 and 101010x 2020-02-11 21:44:57 +00:00
HashAndEncode.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
hello-opencl.cpp run all available OpenCL devices 2019-02-11 21:29:33 +00:00
image_diff_metric.cpp pdf-comparison and image_diff_metric tools 2019-09-19 21:18:28 +00:00
imgcvt.cpp Move skcms.h to include/third_party/skcms 2019-04-29 15:02:45 +00:00
install_dependencies.sh Add harfbuzz to tools/install_dependencies.sh 2019-05-03 23:52:09 +00:00
ios_utils.h Fix bugs with fence sync API on iOS devices 2017-10-10 19:05:13 +00:00
ios_utils.m rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
jsondiff.py Fix pylint check in presubmit 2018-06-22 14:38:28 +00:00
list_gms.cpp gm: GMFactory returns a unique_ptr<> 2019-08-12 19:02:40 +00:00
list_gpu_unit_tests.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
LsanSuppressions.cpp stifle leaks in terminator_CreateDevice() 2020-04-08 15:28:48 +00:00
merge_static_libs.py Remove trailing whitespace. 2017-10-09 21:20:34 +00:00
milestone.py SkPDF: milestone in metadata, also SkMilestone.h 2016-03-29 09:09:29 -07:00
mirror-dev.sh Update mirror-dev for *-dev:amd64 packages. 2017-11-09 22:44:57 +00:00
misc_utils.py Whitespace fixes for Python tools 2014-06-25 08:40:58 -07:00
OverwriteLine.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
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 fix pathops bug 8380 2018-12-21 19:15:54 +00:00
pathops_visualizer.htm fix pathops bug 8380 2018-12-21 19:15:54 +00:00
ProcStats.cpp SKQP Build for Fuchsia SDK 2019-11-18 12:34:28 +00:00
ProcStats.h DM+nanobench: print both current and max RSS. 2015-04-30 07:11:22 -07:00
public_headers_warnings_check.cpp GN: add public headers warnings check. 2016-11-16 19:27:29 +00:00
random_parse_path.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
random_parse_path.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
reformat-json.py add reformat-json.py script 2013-07-19 15:45:22 +00:00
Registry.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
remote_demo.cpp Part 1/2 to remove SkTextBlobCacheDiffCanvas::Settings 2019-08-16 15:27:35 +00:00
ResourceFactory.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
Resources.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
Resources.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
retrieve_from_googlesource.py [minor] mark scripts as executable 2019-11-21 17:06:27 +00:00
rewrite_includes.py renable SkM44.h checks 2020-02-26 14:54:55 +00:00
sanitize_source_files.py Clean up more references to GYP. 2017-02-06 17:55:35 +00:00
skhello.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
SkMetaData.cpp SkMetaData: drop unused pointer ownership 2019-08-12 18:26:00 +00:00
SkMetaData.h SkMetaData: drop unused pointer ownership 2019-08-12 18:26:00 +00:00
skottie2movie.cpp Remove submit from async read pixels. User must submit. 2020-06-02 16:55:04 +00:00
skp_parser.cpp Remove an uncessary and unused parameter for partially generating the JSON command list 2019-12-13 19:30:03 +00:00
skpinfo.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
SkSharingProc.cpp Reland "Deserialize MultiPictureDocument based SKP files (with image sharing proc) in wasm debugger." 2019-06-21 15:49:21 +00:00
SkSharingProc.h Reland "Deserialize MultiPictureDocument based SKP files (with image sharing proc) in wasm debugger." 2019-06-21 15:49:21 +00:00
SkVMBuilders.cpp remove i16x2 ops 2020-04-13 19:08:11 +00:00
SkVMBuilders.h remove i16x2 ops 2020-04-13 19:08:11 +00:00
Stats.h rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
test_all.py skimage, die die die 2014-12-15 12:47:52 -08:00
test_pdfs.py Add an SKP to PDF rendered. test_pdfs.py will be hooked up in buildbot testing later. 2012-10-10 15:20:34 +00:00
ToolUtils.cpp Delete ToolUtils::set_path_pt 2020-05-04 19:00:57 +00:00
ToolUtils.h Delete ToolUtils::set_path_pt 2020-05-04 19:00:57 +00:00
UrlDataManager.cpp begin refactoring SkTDynamicHash and SkTMultiMap 2020-03-16 14:06:30 +00:00
UrlDataManager.h Support using an externally manage list of images in UrlDataManager for wasm debugger. 2020-01-03 21:25:12 +00:00
using_skia_and_harfbuzz.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
valgrind.supp Add valgrind suppressions for GrClearImage 2019-11-05 15:46:13 +00:00
whitelist_typefaces.cpp rewrite includes to not need so much -Ifoo 2019-04-24 16:27:11 +00:00
win_dbghelp.cpp Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
win_dbghelp.h eliminate SK_BUILD_FOR_WIN32 2018-01-26 19:52:04 +00:00
win_lcid.cpp Move SkTSearch.h into src. 2019-05-15 14:15:07 +00:00
xsan.blacklist turn on alignment sanitizer 2018-08-09 21:13:15 +00:00