Apply -fsanitize-recover=pointer-overflow to third_party code only.
I'm trying to keep Skia behaving the same, avoiding illegal nullptr+k:
- Add null check in SkJSON fast string path.
- Add null check (first alloc) and some comments to SkArenaAlloc.
- March an int index instead dst pointer in SkBase64.
Bug: skia:9731
Change-Id: I646635558ea63ded846b746f2a1f0b4f1e1eacff
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268109
Reviewed-by: Florin Malita <fmalita@chromium.org>
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This CL:
1) Makes the compressed_textures GM use a red outline to indicate decompression (instead of a color rotation)
2) Disallows GPU resizing of textures w/ alpha in the wacky_yuv_formats GM
3) Guards GrTwoColorBC1Compress with GR_TEST_UTILS to make it clear that it is just a testing utility
4) Fixes the wacky_yuv_formats GM on platforms with RGBA PM color order
Change-Id: I3942c4ab1d2c1fab3c8d39c6c99136b75ba10132
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268119
Reviewed-by: Greg Daniel <egdaniel@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
Since the Blink side CTFontRefs are no longer created from CGFontRefs
after [1], we do not need to pass CGFontRefs to Skia any longer for
keeping them alive. Clean up related plumbing which previously passed
through the CGFontRef to the SkTypefaceMac constructor.
[1] https://chromium-review.googlesource.com/c/chromium/src/+/1964073
Bug: chromium:1033478
Change-Id: Ic85cae6289fa9b4886201c92defb54fcc5622720
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266816
Reviewed-by: Dominik Röttsches <drott@chromium.org>
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
Renables the Programs test on the Metal bots.
Bug: skia:9817
Change-Id: Ie1f0b520e37793e5a45ab85a55fd3cdc5f775977
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266572
Reviewed-by: Herb Derby <herb@google.com>
Commit-Queue: Jim Van Verth <jvanverth@google.com>
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.
depot_tools:
https://crrev.com/ae2b962ce583ad38c7b2b105b6dd5ea55d576056 (sdefresne@chromium.org)
Tentative fix for roll-dep.py failing in generate commit message
More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I27c4dfac23cfe063c9c39838522df0feff7ee253
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/268098
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
ee07cb3175..e196bc85ac
git log ee07cb317579..e196bc85ac2d --date=short --first-parent --format='%ad %ae %s'
2020-01-30 kbr@chromium.org Add driver bug workaround for rewriting row major matrices.
2020-01-30 ynovikov@chromium.org Roll chromium_revision e1633af636..8ffb18d0b9 (724302:736949)
2020-01-30 jmadill@chromium.org Vulkan: Don't dirty index/vertex buffers on each syncState.
Created with:
gclient setdep -r third_party/externals/angle2@e196bc85ac2d
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC reed@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: reed@google.com
Change-Id: Id2660c17bbca11cbe32875844ad46230b77b22bd
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267999
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Change-Id: I23e44ae389d00ae6dad6b04e24522f854dc98d75
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267177
Commit-Queue: Herb Derby <herb@google.com>
Reviewed-by: Jim Van Verth <jvanverth@google.com>
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.
depot_tools:
https://crrev.com/ae510e8f08e8b7457b8d7ef9557fe68dc60b4046 (fmayer@google.com)
Do not crash for non URL (i.e. SSH) remotes.
More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6fb6e19f6fb5ac33901a32b790d57d08598e880e
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267920
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Change-Id: I0a6627f9b8d47e51c82c89ff1df75c3add8e8035
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267919
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Bug: b/135133301
This will allow the new NDK decoding API to skip any color correction
for images with profiles that do not map exactly to an SkColorSpace.
Change-Id: I893c13906898b7250ce0ae7f249fbe63bfa8d864
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267821
Commit-Queue: Leon Scroggins <scroggo@google.com>
Reviewed-by: Derek Sollenberger <djsollen@google.com>
- add Mac PDF rasterizer
- create a mac pdf bot
- blacklist some GMs that CG takes forever to rasterize
- remove obsolete --dont_write pdf feature
This new Mac -PDF bot is now the _only_ bot running PDF code.
Obviously we can expand from here.
pdfium was looking like a pain to build and/or integrate
into our own build. pdftocairo looked promising, and is
already installed on the bots, but it is very slow and
prone to error. CG was the next thing I tried.
Change-Id: I82b04121f484e7dd78f60a648485a09218dd5279
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267810
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Mike Reed <reed@google.com>
Additionally this changes updates GrRenderTargetContext drawTexture to take
a view. This was done since there were a bunch of places where the result
of the copy goes straight to the drawTexture call.
Bug: skia:9556
Change-Id: If7094eb51ed343620011d03b86d603e3c6289c17
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267856
Commit-Queue: Greg Daniel <egdaniel@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
Change-Id: Ic7e233216f7d1031cf2c0f97003140b3e09f5491
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267760
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This fixes a build error that resulted from FIDL changes that are in the SDK.
Change-Id: I87a7632aac843903229e2c081d1426a31c8f8552
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267731
Reviewed-by: Brian Salomon <bsalomon@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This reverts commit d1be5d64f8.
Reason for revert: Chrome win compile
Original change's description:
> Fix skshaper in component builds
>
> It was building a shared library, but had no exports (on Windows).
> We think the correct model for modules in the future is for each one
> to be a separate DLL linked against the public API/exports of Skia.
> This serves as the model for that. Doing this with other modules will
> probably require exporting more symbols from Skia.
>
> Change-Id: I116b1635533d755ae71e8df5aa234270b7f77a31
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267477
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
TBR=mtklein@google.com,brianosman@google.com
Change-Id: I4c70dc996ce3964b017dc863bed2428bf4b63325
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267758
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
This reverts commit 3e98c0e1d1.
Reason for revert: Need to revert earlier CL
Original change's description:
> Use separate SKSHAPER_DLL define to activate shared library logic
>
> Change-Id: I35cd463fd85920651a940a9af131f7b6515c2a3a
> Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267676
> Reviewed-by: Mike Klein <mtklein@google.com>
> Commit-Queue: Brian Osman <brianosman@google.com>
TBR=mtklein@google.com,brianosman@google.com
Change-Id: Ia25b838a2fbe5cd5a7be7a0a8c2e7052647ded9a
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267757
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Change-Id: I35cd463fd85920651a940a9af131f7b6515c2a3a
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267676
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Too noisy.
Change-Id: I454573b92730854697147415333d1874d3c02bfa
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267617
Reviewed-by: Eric Boren <borenet@google.com>
Commit-Queue: Ravi Mistry <rmistry@google.com>
SkBlurMaskFilterImpl::filterMaskGPU uses full src proxy as srcBounds
passed to SkGpuBlurUtils::GaussianFilter.
Change-Id: Ia3e3b339f358f551e37b80328cfdb7382af902b3
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267480
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Salomon <bsalomon@google.com>
It was building a shared library, but had no exports (on Windows).
We think the correct model for modules in the future is for each one
to be a separate DLL linked against the public API/exports of Skia.
This serves as the model for that. Doing this with other modules will
probably require exporting more symbols from Skia.
Change-Id: I116b1635533d755ae71e8df5aa234270b7f77a31
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267477
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
In the end it turned out best to let the subclasses
modify the mask, rather than return how to do it.
This gave more flexibility about how to calcualte it.
Add negate(x), norm(x,y).
Change-Id: Ie17050037f0441becf06897fbe31587d6709009d
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267456
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
This change replaces system-temp with isolated-temp. As system-temp is
now deprecated.
Bug: fuchsia:25081
Change-Id: I4f87b69caa95df7c9809c3eb3d0f7e40ef4cddad
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266974
Reviewed-by: John Rosasco <rosasco@google.com>
Auto-Submit: Benjamin Wright <benwright@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2bc9cc12f0..ee07cb3175
git log 2bc9cc12f0b0..ee07cb317579 --date=short --first-parent --format='%ad %ae %s'
2020-01-30 jmadill@chromium.org Test Harness: Allow filter with sharding params.
2020-01-29 tobine@google.com Add GN arg to extract native libs in APK
2020-01-29 jdarpinian@chromium.org Fix re-enabling ARB_texture_rectangle
2020-01-29 geofflang@chromium.org D3D11: Copy from Image objects instead of TextureStorage when possible.
2020-01-29 spang@chromium.org Fuchsia: Enable perFrameWindowSizeQuery by default
2020-01-29 sugoi@google.com Enable GL_OES_depth_texture_cube_map with Vulkan backend
2020-01-29 spang@chromium.org Fuchsia: Skip PointSpriteAlternatingDrawTypes on ARM Fuchsia
2020-01-29 shrekshao@google.com SH_CLAMP_INDIRECT_ARRAY_BOUNDS logic update
2020-01-29 syoussefi@chromium.org Vulkan: Cleanup glslang wrapper
2020-01-29 courtneygo@google.com Vulkan: Simplify format table generation
2020-01-29 syoussefi@chromium.org Vulkan: Set varying location & xfb decorations in SPIR-V
2020-01-29 jgilbert@mozilla.com Disable skipValidation when context is lost.
2020-01-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/glslang/src 07a55839eed5..9a80305c0897 (1 commits)
2020-01-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/vulkan-tools/src e39b5cf6a1b6..ebe1b7497acb (1 commits)
2020-01-29 angle-autoroll@skia-public.iam.gserviceaccount.com Roll third_party/SwiftShader 34e16df059f8..6c3dc3581eaf (2 commits)
2020-01-29 syoussefi@chromium.org Vulkan: Set fragment output locations in SPIR-V
2020-01-29 syoussefi@chromium.org Vulkan: Set vertex attribute locations in SPIR-V
2020-01-29 syoussefi@chromium.org Vulkan: Set set/binding in SPIR-V
Created with:
gclient setdep -r third_party/externals/angle2@ee07cb317579
If this roll has caused a breakage, revert this CL and stop the roller
using the controls here:
https://autoroll.skia.org/r/angle-skia-autoroll
Please CC reed@google.com on the revert to ensure that a human
is aware of the problem.
To report a problem with the AutoRoller itself, please file a bug:
https://bugs.chromium.org/p/skia/issues/entry?template=Autoroller+Bug
Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md
Cq-Include-Trybots: skia/skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia/skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-Golo-GPU-QuadroP400-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUC8i5BEK-GPU-IntelIris655-x86_64-Debug-All-ANGLE;skia/skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE
Bug: None
Tbr: reed@google.com
Change-Id: I0df936cb100a6c1c3a0767aefd6a97ff5a1b4d81
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267524
Reviewed-by: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: skia-autoroll <skia-autoroll@skia-public.iam.gserviceaccount.com>
This is a hybrid approach where we stencil only the curves using GPU
tessellation shaders, and then tessellate the path's inner polygon on
CPU and draw it directly to the final render target, stencilled
against the curves. Tessellating just the inner polygon is more than
fast enough to do in real time, and still allows us fill in the
majority of pixels in a single render pass. It gives us most the
benefit of CPU tessellation, but at a fraction of the cost.
Furthermore, the tessellated inner polygon can potentially be cached
and reused independent of the view matrix.
Change-Id: Id45adc643b51ab80a0c655dd2045a5314bdc7507
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266456
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Greg Daniel <egdaniel@google.com>
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (depot_tools) into this repository.
depot_tools:
https://crrev.com/e827b0f7ec9d54c901ac9a9d2d734cd5ecbf478e (sokcevic@google.com)
Adds support to edit description on git cl upload
More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
TBR=borenet@google.com
Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ic8700be1df6c2db27c485a610035b6b784fc98f2
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/267518
Reviewed-by: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: Recipe Roller <recipe-mega-autoroller@chops-service-accounts.iam.gserviceaccount.com>
The inner polygons connect the endpoints of each verb. (i.e., they are
the path that would result from collapsing all curves to single
lines.) Requiring it to be simple means the tessellator will abort if
there is any self intersection or double winding.
This exciting new mode will be used by the GPU tessellator. It will
stencil the curves only, then draw the inner polygon directly to the
canvas. This gives us most the advantage of CPU tessellation, at a
fraction of the cost. And the tessellated inner polygon can
potentially be cached and reused independent of the view matrix.
Change-Id: I4c70b18c6f8b011396e00a5b08997cdf9846c9af
Reviewed-on: https://skia-review.googlesource.com/c/skia/+/266422
Commit-Queue: Chris Dalton <csmartdalton@google.com>
Reviewed-by: Brian Salomon <bsalomon@google.com>