Commit Graph

36228 Commits

Author SHA1 Message Date
Khushal
40adb3c41f fonts: Fix UAF bug in SkRemoteGlyphCache.
No reference to memory allocated from the serializer should be retained
after another allocation is made, since the vector can internally
realloc. In the case where a glyph is tooLargeForAtlas, we serialize the
path and still access the glyph after it, which could result in a UAF
bug.

R=mtklein@google.com

Bug: 874740
Change-Id: I33c048c154e53b89d68acd02d68718d7ec7b2388
Reviewed-on: https://skia-review.googlesource.com/147824
Commit-Queue: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
2018-08-17 00:51:51 +00:00
recipe-roller
e21f0ec04e Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/99a5a657f34715544dae41925c0d418482dc00c4 Fix type-checking for default tuple vals in cipd recipe_module. (bpastene@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I1ecf88425c48124c9b7b208b49e8a88251d5680a
Reviewed-on: https://skia-review.googlesource.com/147800
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-16 23:55:24 +00:00
angle-skia-autoroll
c525a9c724 Roll third_party/externals/angle2 f0e3c19a0c02..3394a73db973 (2 commits)
f0e3c19a0c..3394a73db9


git log f0e3c19a0c02..3394a73db973 --date=short --no-merges --format='%ad %ae %s'
2018-08-16 tobine@google.com Refactor of EGL SwapBuffers validation
2018-08-16 lfy@google.com GLES1: Fixes for Gets() test


Created with:
  gclient setdep -r third_party/externals/angle2@3394a73db973

The AutoRoll server is located here: https://angle-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=kjlubick@google.com

Change-Id: I687e5566ef8bb132884fa91d44d047f6c7b7490e
Reviewed-on: https://skia-review.googlesource.com/147780
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-16 23:43:53 +00:00
Ben Wagner
035aa329ba SkFontMgr::matchFamilyStyle can return nullptr.
The current documentation states that SkFontMgr::matchFamilyStyle will
never return nullptr, resolving to the default system font or the empty
typeface if necessary. This isn't the behavior desired by any users,
since doing so makes it difficult for the user to check if a 'good'
match was made or not. All of the current SkFontMgr implementations can
return nullptr anyway for a number of reasons, from lack of a 'good'
match to an error.

Bug: skia:8260
Change-Id: I96299c16aaa7228fd42a9d8ec4889c7355cb53a5
Reviewed-on: https://skia-review.googlesource.com/147721
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-08-16 22:49:52 +00:00
Stephan Altmueller
0edb982602 Upgrade to iOS 11
Bug: skia:
Change-Id: Iad31c9857e005e5ac50b6f27127fc95df9fc5bce
Reviewed-on: https://skia-review.googlesource.com/147421
Commit-Queue: Stephan Altmueller <stephana@google.com>
Reviewed-by: Ben Wagner <benjaminwagner@google.com>
2018-08-16 22:37:52 +00:00
Mike Klein
ab5fec9cd1 Revert "avoid illegal enum values in GrGLGpu"
This reverts commit 7ca217b3b2.

Reason for revert: 
Perf-Android-Clang-AndroidOne-GPU-Mali400MP2-arm-Debug-All-Android ?

Original change's description:
> avoid illegal enum values in GrGLGpu
> 
> This tracks the state of the blend equation and coefficients
> using an out-of-band bool rather than an illegal enum value.
> 
> This was caught by -fsanitize=enum.
> 
> This CL doesn't change the size of fHWBlendState.
> 
> Change-Id: I8dbc8aaaa07e82186c148ceb19590390051eb296
> Reviewed-on: https://skia-review.googlesource.com/146962
> Reviewed-by: Chris Dalton <csmartdalton@google.com>
> Commit-Queue: Mike Klein <mtklein@google.com>

TBR=mtklein@google.com,csmartdalton@google.com

Change-Id: I508cc6a49fcc68907086dcde904db2f791802474
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Reviewed-on: https://skia-review.googlesource.com/147600
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-08-16 21:54:26 +00:00
recipe-roller
8d77d1d85e Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/373fc6c634e2082536176f66e106260fed801485 Add pkg-var support to cipd recipe_module. (bpastene@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I39b73d68924e04951efec7de9565c06b667291de
Reviewed-on: https://skia-review.googlesource.com/147660
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-16 20:29:56 +00:00
Allan MacKinnon
d63feaabff Documentation update.
Bug: skia:
Change-Id: I768a4e90dc1fa0ca6ca339de446218e489e5a436
Reviewed-on: https://skia-review.googlesource.com/147640
Reviewed-by: Allan MacKinnon <allanmac@google.com>
Commit-Queue: Allan MacKinnon <allanmac@google.com>
Auto-Submit: Allan MacKinnon <allanmac@google.com>
2018-08-16 20:26:57 +00:00
Mike Reed
1aced500c8 can't normalize non-finites
The stroker preflights calls to setNormalize, which fails for non-finites,
so the CanNormalize needs to reflect this.

Bug: oss-fuzz:8368
Change-Id: I3591f73391c53a2538b9bc1aceb1baa4cd19e676
Reviewed-on: https://skia-review.googlesource.com/147565
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Cary Clark <caryclark@google.com>
2018-08-16 20:20:27 +00:00
Derek Sollenberger
deeb655912 Revert "Add ability to specify different GP textures for each mesh in a draw."
This reverts commit d1b8a166db.

Reason for revert: breaks android apps, by drawing overlapping content out of painters order.

Original change's description:
> Add ability to specify different GP textures for each mesh in a draw.
> 
> Uses GrPipeline::DynamicStateArrays to allow per-mesh GP textures when
> drawing an array of GrMeshes.
> 
> Uses this along with op-chaining to make drawing multiple TextureOps
> with different textures faster.
> 
> Change-Id: Iec4da1b72a13d0e0c94c8a8568fe4221c539dfcf
> Reviewed-on: https://skia-review.googlesource.com/145960
> Commit-Queue: Brian Salomon <bsalomon@google.com>
> Reviewed-by: Brian Osman <brianosman@google.com>

TBR=bsalomon@google.com,robertphillips@google.com,brianosman@google.com

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I5c686b85adb378ba7faf34576efce74aebd348f7
Reviewed-on: https://skia-review.googlesource.com/147260
Reviewed-by: Derek Sollenberger <djsollen@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
2018-08-16 19:49:54 +00:00
recipe-roller
827513296e Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/95fb6dc810348da9dd261a4f7ac2d66c5743da86 [cipd] Check CIPD client hash during updates on Windows. (vadimsh@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ifffbabe04c4878adb327e2c0dc0a18356f4740bb
Reviewed-on: https://skia-review.googlesource.com/147563
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2018-08-16 19:34:37 +00:00
Mike Klein
d46dce3de5 don't adapt any gray colors to 565
Adapting gray to 565 will add a noticeable purple/green tint.
I'd rather only the 565 images in Gold were tainted with that.

Change-Id: Ib09e92b2f78c6de086345124e9eefeb31bbb5fa8
Reviewed-on: https://skia-review.googlesource.com/147422
Commit-Queue: Mike Klein <mtklein@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-08-16 19:13:41 +00:00
Robert Phillips
d221adbfc4 Adjust canFilterMaskGPU to only reject small rect blurs
Change-Id: Iabcbbac2fc1ff8bcfd87bd774f81cdb4b960daa7
Reviewed-on: https://skia-review.googlesource.com/147560
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Robert Phillips <robertphillips@google.com>
2018-08-16 18:54:00 +00:00
Mike Klein
4de0507235 add p3 and ep3 configs to DM
Change-Id: I90ef93b34149750316f4053a65a324894218b984
Reviewed-on: https://skia-review.googlesource.com/147423
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Mike Klein <mtklein@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-08-16 18:35:12 +00:00
Mike Klein
7ca217b3b2 avoid illegal enum values in GrGLGpu
This tracks the state of the blend equation and coefficients
using an out-of-band bool rather than an illegal enum value.

This was caught by -fsanitize=enum.

This CL doesn't change the size of fHWBlendState.

Change-Id: I8dbc8aaaa07e82186c148ceb19590390051eb296
Reviewed-on: https://skia-review.googlesource.com/146962
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-08-16 18:21:35 +00:00
Allan MacKinnon
ed5e73cdf1 Merge Vulkan Compute work into master.
Bug: skia:
Change-Id: I37ee0c30620bd998586a22f5d6e8177ebcecb178
Reviewed-on: https://skia-review.googlesource.com/147083
Reviewed-by: Allan MacKinnon <allanmac@google.com>
Commit-Queue: Allan MacKinnon <allanmac@google.com>
Auto-Submit: Allan MacKinnon <allanmac@google.com>
2018-08-16 18:10:56 +00:00
Kevin Lubick
29d501cddc Make verbose.log optional in upload_dm_results
Will land/test after https://skia-review.googlesource.com/c/skia/+/147042

Bug: skia:
Change-Id: I381e369df7fb904c81948f36dbad679d3f430415
Reviewed-on: https://skia-review.googlesource.com/147202
Reviewed-by: Stephan Altmueller <stephana@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
2018-08-16 17:54:13 +00:00
Mike Reed
6d10f8bda1 move patheffect virtuals to protected and rename
- change filterPath to safely handle if src and dst are aliases

Bug: skia:8254
Change-Id: I125d19404ca0a610f73271abb5c5455d1d50f9ed
Reviewed-on: https://skia-review.googlesource.com/147466
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Mike Reed <reed@google.com>
2018-08-16 17:47:22 +00:00
recipe-roller
cbb7d572aa Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/421bc3f84d1b4fdbfaf50d8b48449e0e871a6421 Deploy git 2.18 to prod win depot_tools users. (tandrii@chromium.org)
  https://crrev.com/3d429cf5131a10f0e6ced89e8809820398ece78b [cipd] Check CIPD client hash against pinned SHA256 during updates. (vadimsh@chromium.org)
recipe_engine:
  https://crrev.com/0534af39f0790915a8d13815d59784c8664c412d Correct parsing logic for tags and refs in describe operation (sergiyb@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I14514382c047ad3c487e69d3f6924a90ad692937
Reviewed-on: https://skia-review.googlesource.com/147463
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Sergiy Byelozyorov <sergiyb@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-16 16:56:49 +00:00
angle-skia-autoroll
cd8689f004 Roll third_party/externals/angle2 3fd614d06e50..f0e3c19a0c02 (1 commits)
3fd614d06e..f0e3c19a0c


git log 3fd614d06e50..f0e3c19a0c02 --date=short --no-merges --format='%ad %ae %s'
2018-08-16 oetuaho@nvidia.com Add error messages for BlitFramebuffer related errors


Created with:
  gclient setdep -r third_party/externals/angle2@f0e3c19a0c02

The AutoRoll server is located here: https://angle-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=kjlubick@google.com

Change-Id: I47f5364885ddf4c3991eb1d0a7fa3a392ec20b6c
Reviewed-on: https://skia-review.googlesource.com/147380
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-16 14:54:02 +00:00
skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com
df99a9fa57 Roll skia/third_party/skcms f1e2b45d18fa..b2fffd2ecf2e (1 commits)
https://skia.googlesource.com/skcms.git/+log/f1e2b45d18fa..b2fffd2ecf2e

2018-08-16 brianosman@google.com Actually support profiles with 1D and 2D CLUTs


The AutoRoll server is located here: https://skcms-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.



CQ_INCLUDE_TRYBOTS=master.tryserver.blink:linux_trusty_blink_rel
TBR=kjlubick@google.com

Change-Id: I1f1d967b7a856a79dd82ffc2fb51ff23c3e3bab8
Reviewed-on: https://skia-review.googlesource.com/147400
Reviewed-by: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: skcms-skia-autoroll <skcms-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-16 14:50:05 +00:00
Mike Reed
340818ee5e add more tests for SkCubicMap
Bug: skia:
Change-Id: I75e582a4486abbccf081f77457895c3da93fea16
Reviewed-on: https://skia-review.googlesource.com/147219
Auto-Submit: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
2018-08-16 14:30:16 +00:00
Ben Wagner
14884cd86c Beautify GlyphTransform sample.
The glyph transform sample often looks empty when seen in Viewer since
it doesn't loop and the drawing is often out of range by the time the
sample is seen. Make the sample loop, correct 't' to be in milliseconds,
correct 'sq' to sqrt, move the origin to the draw, make the text draw
centered at the origin, and update the animation based on the size of
the sample.

Change-Id: Ia87817db6981ee73a50793b39696ef393ff26df8
Reviewed-on: https://skia-review.googlesource.com/147283
Reviewed-by: Jim Van Verth <jvanverth@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-08-16 14:17:46 +00:00
Mike Klein
cbd83bbd77 don't adapt gray colors to 565
These shallow gradient tests work best if we're using actual gray.
Any green/purple leak into them will just confuse triaging them.

Change-Id: If4a3a136df7a62cbec8b90bf50985db6eb8de204
Reviewed-on: https://skia-review.googlesource.com/147420
Commit-Queue: Mike Klein <mtklein@google.com>
Commit-Queue: Brian Osman <brianosman@google.com>
Auto-Submit: Mike Klein <mtklein@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
2018-08-16 13:58:18 +00:00
angle-skia-autoroll
767fddfcce Roll third_party/externals/angle2 c1551dc2a7dc..3fd614d06e50 (2 commits)
c1551dc2a7..3fd614d06e


git log c1551dc2a7dc..3fd614d06e50 --date=short --no-merges --format='%ad %ae %s'
2018-08-16 jie.a.chen@intel.com Refactor Context dependency for resolveCompile
2018-08-16 jie.a.chen@intel.com ParallelCompile: Make resource tracking thread-safe


Created with:
  gclient setdep -r third_party/externals/angle2@3fd614d06e50

The AutoRoll server is located here: https://angle-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=kjlubick@google.com

Change-Id: I47ba9ecf8bafcccc0c4f03c9b7e94bad0c8d1d6f
Reviewed-on: https://skia-review.googlesource.com/147340
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-16 04:50:09 +00:00
recipe-roller
64703d11a9 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/2f38dbdd97193f068acdd1ee3e57b6c231e3fb89 Register expect_tests in gclient config. (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ieaf8b44d21d41840f2001684e5aa3a3204c05937
Reviewed-on: https://skia-review.googlesource.com/147301
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-16 00:36:02 +00:00
Florin Malita
77af386c13 [sksg] Explicit text alignment
Work around for https://bugs.chromium.org/p/skia/issues/detail?id=8252

Change-Id: Icae3f69f07a2c95302cfbb3833185517f43d326e
Reviewed-on: https://skia-review.googlesource.com/147218
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Mike Reed <reed@google.com>
2018-08-15 21:54:05 +00:00
recipe-roller
d4c1d35e2b Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/5e5c2173baec63edee49a7491468c594c98e4a7a Revert "[cipd] Check CIPD client hash against pinned SHA256 during updates." (vadimsh@chromium.org)
  https://crrev.com/16a396e431ab37b95f4f651b62494b4d4e94f557 Clarify OWNERS error if using TBR. (rsesek@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3251479d181e7b048561f2d0c4d15fd6b3be80bf
Reviewed-on: https://skia-review.googlesource.com/147280
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-15 21:46:19 +00:00
Mike Reed
cf7258abac add bench for cubicmap
Bug: skia:
Change-Id: Ie88de751e6f889eed02fba1d13e712345256ac72
Reviewed-on: https://skia-review.googlesource.com/147210
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-08-15 20:51:57 +00:00
angle-skia-autoroll
e49966c983 Roll third_party/externals/angle2 21e5e85a4976..c1551dc2a7dc (1 commits)
21e5e85a49..c1551dc2a7


git log 21e5e85a4976..c1551dc2a7dc --date=short --no-merges --format='%ad %ae %s'
2018-08-15 till.rathmann@gmx.de D3D11 fix: Mipmapping was used although disabled via Sampler


Created with:
  gclient setdep -r third_party/externals/angle2@c1551dc2a7dc

The AutoRoll server is located here: https://angle-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=kjlubick@google.com

Change-Id: I9b3774f7c4e2c3f48616257d2527974f328c30bb
Reviewed-on: https://skia-review.googlesource.com/147229
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-15 20:00:42 +00:00
Cary Clark
0251b1be0b fix SkPath documentation
SkPath now returns reference to itself.
There's also a new addPoly() variant.
Update the docs to match.

TBR=reed@google.com,kjlubick@google.com

Docs-Preview: https://skia.org/?cl=147216
Bug: skia:6818
Change-Id: I0e40e942cc46a8994285dfea4c81e2042a4e689c
Reviewed-on: https://skia-review.googlesource.com/147216
Commit-Queue: Cary Clark <caryclark@skia.org>
Commit-Queue: Kevin Lubick <kjlubick@google.com>
Auto-Submit: Cary Clark <caryclark@skia.org>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
Reviewed-by: Cary Clark <caryclark@skia.org>
2018-08-15 19:57:32 +00:00
Jim Van Verth
04d163212a Add internal tree implementation to EdgeList.
Makes some of the intersection and comparison calculations more
robust and faster as well.

Bug: skia:
Change-Id: Ic6b6599be185d4fd888899ecd02ba0df7bc33e18
Reviewed-on: https://skia-review.googlesource.com/146383
Commit-Queue: Jim Van Verth <jvanverth@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-08-15 19:55:39 +00:00
recipe-roller
f8bfdde1f0 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/0065711927a4c79a7edc5ad27bcdc7a69d9425da Grant everyone owners on README.recipes.md. (jbudorick@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3e015df6e107882619f7db0cc85b4662168a8816
Reviewed-on: https://skia-review.googlesource.com/147215
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-15 19:25:51 +00:00
Kevin Lubick
a0ba612bb2 [PathKit] Adding test infrastructure to support Gold output
To get the gold images out of the browser tests, this adds
testReporter.js and pathkit_aggregator.go.  testReporter bundles
up the output as a base64 encoded PNG and sends it over the local
network to pathkit_aggregator.  pathkit_aggregator will keep
a list of test results reported in this way and write the PNGs
to /OUT of the container (which is the swarming output directory).
Finally, after all the tests are run, the helper script "test_pathkit.sh"
makes a POST request that creates the JSON file that gold expects
(following the schema https://github.com/google/skia-buildbot/blob/master/golden/docs/INGESTION.md)

pathkit_aggregator takes many command line arguments which control
the keys that Gold needs in order to ingest and handle the data.
Of note, this creates a new set (i.e. source_type) of gold images
called "pathkit", which will distinguish it from "gm", "image", etc.

There will be at least 2 sub-sets of "pathkit" images, "canvas" and "svg",
(representing the 2 output types of PathKit).  This CL doesn't
quite handle SVG yet, as it needs a way to convert SVG to PNG in the
browser and will be addressed in a follow up CL.

A "standard" gm is sized at 600x600. This was arbitrarily picked.

Note that the functions in testReporter.js return Promises based
on the fetch requests to post the data. This eliminates the race
condition between the /report_gold_data and /dump_json since
running the karma tests won't return until all reports are done.

Other changes of note:
 - Adds go to karma-chrome-tests container.
 - renames recipe_modules/build/wasm.py -> pathkit.py to be consistent with
the name of test_pathkit.py and make for easier grepping.
 - Increases the JS test timeout to 10s (up from 5) to hopefully avoid
the flakes seen in the Debug Test.

Bug: skia:8216
Change-Id: Ic2cad54f3d19cc16601cf2e9a87798db1e6887a2
Reviewed-on: https://skia-review.googlesource.com/147042
Reviewed-by: Stephan Altmueller <stephana@google.com>
2018-08-15 19:25:42 +00:00
recipe-roller
004669bd46 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/ba883cb5ed14aac5d81d6105caabf505c3afe8c6 bot_update: only fetch explicit refs for the main solution. (jbudorick@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: Ia8d86a7ee9a48e91fc5aaae6c45b906cbbe22bba
Reviewed-on: https://skia-review.googlesource.com/147211
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
2018-08-15 18:49:53 +00:00
Kevin Lubick
084d996d5a [PathKit] Fix bindings to account for SkPath methods returning this
Bug: skia:
Change-Id: I25baf2d5d215cc950da99679649bb3da89dc0681
Reviewed-on: https://skia-review.googlesource.com/147209
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-08-15 17:35:39 +00:00
Mike Reed
b631742f0b return this from maker calls, so we can chain the calls
Bug: skia:
Change-Id: Id62eda9dab9399ce1183a959438db7dde59889d8
Reviewed-on: https://skia-review.googlesource.com/147113
Commit-Queue: Mike Reed <reed@google.com>
Reviewed-by: Kevin Lubick <kjlubick@google.com>
2018-08-15 17:21:59 +00:00
recipe-roller
31a0944bb3 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
recipe_engine:
  https://crrev.com/2a2c2ad5a29a6473130e7293a4585fbd5d403ee0 [cipd] Don't fail when search result is empty (phosek@google.com)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I3828ef85df6e59e7a416a56313c870ac7b796604
Reviewed-on: https://skia-review.googlesource.com/147206
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2018-08-15 16:19:26 +00:00
Ruiqi Mao
c97a339cd6 added optimizations to speed up skinning
Docs-Preview: https://skia.org/?cl=145148
Bug: skia:
Change-Id: If27722105a1e8999f6440b6fd4044cc1f327827e
Reviewed-on: https://skia-review.googlesource.com/145148
Commit-Queue: Ruiqi Mao <ruiqimao@google.com>
Reviewed-by: Brian Osman <brianosman@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-08-15 15:52:29 +00:00
Robert Phillips
137ca523a3 Remove prePathMatrix from SkDevice::drawPath
Change-Id: Id49d171252cab33378f00021bb395e6ae6991178
Reviewed-on: https://skia-review.googlesource.com/147101
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Mike Reed <reed@google.com>
2018-08-15 14:48:19 +00:00
Chris Dalton
916c498c04 Consolidate the scissor enums into one "GrScissorTest" enum
Bug: skia:
Change-Id: If8d40b54860acb5c18d3a9a82cb2a61e3c42025f
Reviewed-on: https://skia-review.googlesource.com/147172
Commit-Queue: Robert Phillips <robertphillips@google.com>
Reviewed-by: Robert Phillips <robertphillips@google.com>
2018-08-15 13:53:42 +00:00
angle-skia-autoroll
49bb9c17d7 Roll third_party/externals/angle2 2363356f52f6..21e5e85a4976 (1 commits)
2363356f52..21e5e85a49


git log 2363356f52f6..21e5e85a4976 --date=short --no-merges --format='%ad %ae %s'
2018-08-15 fjhenigman@chromium.org builtools: Roll GN.


Created with:
  gclient setdep -r third_party/externals/angle2@21e5e85a4976

The AutoRoll server is located here: https://angle-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=kjlubick@google.com

Change-Id: Ie1189fcbf1cefa3c98b19f0818463a387edf2156
Reviewed-on: https://skia-review.googlesource.com/147169
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-15 06:13:59 +00:00
recipe-roller
572eee09ef Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/52c7211807930272424213ff6127c209de790eca Set explicit latest OWNERS for bot_update recipe_module. (tandrii@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I6f5a98029d8be6f87944ce2696a893fa79bd0ee2
Reviewed-on: https://skia-review.googlesource.com/147119
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2018-08-15 00:17:54 +00:00
Ben Wagner
d4bffed020 Update CCPRGeometry to use pool for op.
This sample has been broken for a bit because it is no longer allowed to
directly 'new' up an Op. Instead Ops should be created in pools.

Bug: skia:8251
Change-Id: Ic0716c4dce088350a8ef7b34c2f2f6518ca5d159
Reviewed-on: https://skia-review.googlesource.com/147114
Reviewed-by: Chris Dalton <csmartdalton@google.com>
Commit-Queue: Chris Dalton <csmartdalton@google.com>
2018-08-15 00:12:40 +00:00
recipe-roller
41f7bcf6c3 Roll recipe dependencies (trivial).
This is an automated CL created by the recipe roller. This CL rolls recipe
changes from upstream projects (e.g. depot_tools) into downstream projects
(e.g. tools/build).


More info is at https://goo.gl/zkKdpD. Use https://goo.gl/noib3a to file a bug.
depot_tools:
  https://crrev.com/eebc3d823220a0c3124e96ad4d577d32bbbeab6e [cipd] Check CIPD client hash against pinned SHA256 during updates. (vadimsh@chromium.org)
  https://crrev.com/e94deafd142f84d8745c1d7226532cec703c5349 bot_update: pull revisions from provided cfg if present. (jbudorick@chromium.org)


TBR=borenet@google.com

Recipe-Tryjob-Bypass-Reason: Autoroller
Bugdroid-Send-Email: False
Change-Id: I7782e44244c627c418be543d5b3ab87604975904
Reviewed-on: https://skia-review.googlesource.com/147116
Commit-Queue: Recipe Roller <recipe-roller@chromium.org>
Reviewed-by: Recipe Roller <recipe-roller@chromium.org>
2018-08-14 23:44:22 +00:00
Mike Reed
0d4a183211 add tests for cubicmap
check for some special cases:
- degenerate or simple cubic
- 0/0

Bug: skia:
Change-Id: Ie978caf9d862755d9693768695bf84eff9ec80e4
Reviewed-on: https://skia-review.googlesource.com/147112
Commit-Queue: Mike Reed <reed@google.com>
Commit-Queue: Florin Malita <fmalita@chromium.org>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Auto-Submit: Mike Reed <reed@google.com>
2018-08-14 21:47:18 +00:00
angle-skia-autoroll
7f2567027d Roll third_party/externals/angle2 35bc74d6d139..2363356f52f6 (1 commits)
35bc74d6d1..2363356f52


git log 35bc74d6d139..2363356f52f6 --date=short --no-merges --format='%ad %ae %s'
2018-08-14 geofflang@chromium.org Make sure index ranges outside of the GLint range are handled correctly.


Created with:
  gclient setdep -r third_party/externals/angle2@2363356f52f6

The AutoRoll server is located here: https://angle-skia-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.

CQ_INCLUDE_TRYBOTS=skia.primary:Build-Debian9-Clang-x86_64-Release-ANGLE;skia.primary:Perf-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC5i7RYH-GPU-IntelIris6100-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Perf-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-AlphaR2-GPU-RadeonR9M470X-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUC6i5SYK-GPU-IntelIris540-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-NUCD34010WYKH-GPU-IntelHD4400-x86_64-Debug-All-ANGLE;skia.primary:Test-Win10-Clang-ShuttleC-GPU-GTX960-x86_64-Debug-All-ANGLE
TBR=kjlubick@google.com

Change-Id: I7fc3f8af2e0fb2332849d029312c2e65c2db17f1
Reviewed-on: https://skia-review.googlesource.com/147160
Reviewed-by: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Commit-Queue: <angle-skia-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
2018-08-14 21:25:36 +00:00
Mike Klein
6a2a197602 implement SkConvertPixels color xform with steps
Opaque destinations like 565 prove the assert
I just added can't be quite so strong.

This kills off another nemesis, append_gamut_transform().

Change-Id: I5030ce094ae0f6a34d0301f6fe060b50342c7ef4
Reviewed-on: https://skia-review.googlesource.com/147106
Reviewed-by: Brian Osman <brianosman@google.com>
Commit-Queue: Mike Klein <mtklein@google.com>
2018-08-14 21:02:19 +00:00
Mike Reed
0edad3e46d inline strcmp for faster json parsing
pays off around 5% for skottie files (total load time)

Could be better if we knew the length of either/both arguments... Seems like we can likely know that a lot of the time.

Bug: skia:
Change-Id: I221e41be2f887ec98476479e012f64bb0ea09b54
Reviewed-on: https://skia-review.googlesource.com/147045
Reviewed-by: Mike Reed <reed@google.com>
Reviewed-by: Florin Malita <fmalita@chromium.org>
Commit-Queue: Mike Reed <reed@google.com>
2018-08-14 20:59:49 +00:00
Ben Wagner
aa166bd744 Update FreeType to use isSubpixel and isVertical.
Instead of directly making a long winded test of "fRec.fFlags &
SkScalerContext::kSomething_Flag" use the isSubpixel and isVertical
helpers. This makes the code a bit easier to read.

Change-Id: I868a84776877bb9d632647695188ef4830c687b2
Reviewed-on: https://skia-review.googlesource.com/147109
Reviewed-by: Ben Wagner <bungeman@google.com>
Commit-Queue: Ben Wagner <bungeman@google.com>
2018-08-14 19:57:17 +00:00