aboutsummaryrefslogtreecommitdiffhomepage
path: root/src
Commit message (Collapse)AuthorAge
* Driver bug workaround: pack_parameters_workaround_with_pack_bufferGravatar Adrienne Walker2018-05-16
| | | | | | | | Bug: chromium: 829614 Change-Id: I3fae2b4181e4a6e37fb31fe2f2e9a6cfacb1860f Reviewed-on: https://skia-review.googlesource.com/128206 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Fix check for valid proxies returned by AtlasManager.Gravatar Jim Van Verth2018-05-16
| | | | | | | | | | | | Also renames a lot of variables to make it clearer that getProxies() returns the number of instantiated proxies, not the number of all proxies. Bug: skia: Change-Id: Ifbc910cbd6635dccdb4e7f0df2e69a0f341130af Reviewed-on: https://skia-review.googlesource.com/128660 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* SkImage::onRefEncoded to return sk_sp.Gravatar Ben Wagner2018-05-16
| | | | | | | | | | | | This changes SkImage::onRefEncoded and downstack calls to return sk_sp. All of the values returned are already sk_sp, so this just updates the API. This change is currently behind the new flag SK_IGNORE_SKIMAGE_ONREFENCODED_CHANGE so that Chromium can be updated. Change-Id: Ic53a88ae23fa8b3b41b84c4abdc4b74e9879da38 Reviewed-on: https://skia-review.googlesource.com/128311 Reviewed-by: Leon Scroggins <scroggo@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Driver bug workaround: gl_clear_brokenGravatar Adrienne Walker2018-05-16
| | | | | | | | | | | | | Skia does not appear to use depth buffers and this appears to be identical to ClearFramebufferResourceManager::ClearFramebuffer in Chromium code. Therefore, just hook up this workaround to turn on these internal Skia workarounds. Bug: chromium: 829614 Change-Id: Icc5f2eb981e39ffef487efa16940d2e50cdbc399 Reviewed-on: https://skia-review.googlesource.com/127220 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Adrienne Walker <enne@chromium.org>
* Driver bug workaround: restore_scissor_on_fbo_changeGravatar Adrienne Walker2018-05-16
| | | | | | | | Bug: chromium: 829614 Change-Id: I333aed9a378ab9b7aafaa96bb495378d1db4a61d Reviewed-on: https://skia-review.googlesource.com/127118 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove problematic pre-allocations when deserializingGravatar Kevin Lubick2018-05-16
| | | | | | | | | | | The fuzzer would frequently OOM on these. Bug: skia:7937 Change-Id: I5e6a7dabeca327452f774100c9db05cd6be4cb06 Reviewed-on: https://skia-review.googlesource.com/128551 Reviewed-by: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com>
* Fix compiler warning for MSVCGravatar Herb Derby2018-05-16
| | | | | | | | | BUG=skia:7954 Change-Id: I2b100f723a88a57aaa4de08860f40ab73b9b674f Reviewed-on: https://skia-review.googlesource.com/128580 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Herb Derby <herb@google.com>
* check for too-big rects, as we do for pathsGravatar Mike Reed2018-05-16
| | | | | | | | Bug: oss-fuzz:8334 Change-Id: Ibeeb8adfbfa543406da4b42aa742a6290bd65509 Reviewed-on: https://skia-review.googlesource.com/128541 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Fix UBSAN warnings in SkPerlinNoiseShaderImplGravatar Kevin Lubick2018-05-16
| | | | | | | | | | Also update the docs in places. Bug: oss-fuzz:6138, oss-fuzz:6275, oss-fuzz:6118 Change-Id: Idfef4118dd6e58f8aa528365895f7d7b8ebc50e5 Reviewed-on: https://skia-review.googlesource.com/128300 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Revert "Check atlasPageCount before accessing the proxy array"Gravatar Yuqian Li2018-05-15
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 072c69cad3b50ba3d04ba7a7d6c9dbec50c1cd4f. Reason for revert: 3000+ seemingly bad gold differences and flutter breakage Original change's description: > Check atlasPageCount before accessing the proxy array > > Bug: skia: > Change-Id: Ib4bca46ea105285f4edea05d78ea4d9ea047d0df > Reviewed-on: https://skia-review.googlesource.com/128295 > Reviewed-by: Jim Van Verth <jvanverth@google.com> > Commit-Queue: Chris Dalton <csmartdalton@google.com> TBR=jvanverth@google.com,csmartdalton@google.com Change-Id: Ia568b3884101aeda46e94ef8c6144da3479bc50d No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: skia: Reviewed-on: https://skia-review.googlesource.com/128420 Reviewed-by: Yuqian Li <liyuqian@google.com> Commit-Queue: Yuqian Li <liyuqian@google.com>
* fonts: Fix memory accounting for deserialized glyphs.Gravatar Khushal2018-05-15
| | | | | | | | | | | | | | | When deserializing glyphs in the SkRemoteGlyphCache, we allocate from the arena for the SkGlyphCache but don't account for it in the total memory used by the cache. Fix that and avoid exposing the SkArenaAlloc from SkGlyphCache, since that can result in such brittle use. R=herb@google.com Bug: 829622 Change-Id: Iecff9ce6e0ed2c641957535363edec3e3fad178d Reviewed-on: https://skia-review.googlesource.com/128112 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Khusal Sagar <khushalsagar@chromium.org>
* Driver bug workaround: max_msaa_sample_count_4Gravatar Adrienne Walker2018-05-15
| | | | | | | | Bug: chromium: 829614 Change-Id: I54054191815ace6159585dab7dd811ebdc863095 Reviewed-on: https://skia-review.googlesource.com/126983 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Driver bug workaround: disallow_large_instanced_drawGravatar Adrienne Walker2018-05-15
| | | | | | | | Bug: chromium: 829614 Change-Id: I3c64cd360674f08b4ca3c4a2d0ef946e40a5c60a Reviewed-on: https://skia-review.googlesource.com/126751 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Chris Dalton <csmartdalton@google.com>
* remove typedef InfoGravatar Cary Clark2018-05-15
| | | | | | | | | | | | | | | | | | typedef SkImageInfo Info saves a little typing at the cost of obfuscating the parameter type. It's only used in a couple of places so remove it. The documentation catalog has gotten a bit stale, so update that as well. Docs-Preview: https://skia.org/?cl=128400 Bug: skia:6898 Change-Id: I621743a2b2d9a78d5f62742501eebf5f4327efa0 Reviewed-on: https://skia-review.googlesource.com/128400 Commit-Queue: Cary Clark <caryclark@skia.org> Commit-Queue: Brian Salomon <bsalomon@google.com> Auto-Submit: Cary Clark <caryclark@skia.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Check atlasPageCount before accessing the proxy arrayGravatar Chris Dalton2018-05-15
| | | | | | | | Bug: skia: Change-Id: Ib4bca46ea105285f4edea05d78ea4d9ea047d0df Reviewed-on: https://skia-review.googlesource.com/128295 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Scrub SkPictureData/SkPictureRecordGravatar Florin Malita2018-05-15
| | | | | | | | | | | | | | - replace manual ref fiddling with smart types - remove unused SkPictureData::fBitmapImageRefs - remove the preallocation in new_array_from_buffer (to prevent fuzzer OOMs) Bug: skia:7937 Change-Id: I50f49fa8e594a138ea09c22f7bf73cf57ec006ff Reviewed-on: https://skia-review.googlesource.com/128309 Commit-Queue: Florin Malita <fmalita@chromium.org> Reviewed-by: Mike Klein <mtklein@chromium.org> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Driver bug workaround: max_texture_size_limit_4096Gravatar Adrienne Walker2018-05-15
| | | | | | | | Bug: chromium: 829614 Change-Id: I127157fa04df2ec6505411aa42f1232910e251d4 Reviewed-on: https://skia-review.googlesource.com/126608 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Remove non-smart SkFontConfigInterface::SetGlobal.Gravatar Ben Wagner2018-05-15
| | | | | | | | | This method is no longer used and is superseded by the 'smart' version. Change-Id: Ic27545a2ec2666d77966727630ba7e960eac5506 Reviewed-on: https://skia-review.googlesource.com/128316 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Revert "Remove non-smart SkFontConfigInterface::SetGlobal."Gravatar Ben Wagner2018-05-15
| | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit 31aa27da9dcb835cba04918a2d4db921d3552881. Reason for revert: breaks a build and forgot to remove declaration Original change's description: > Remove non-smart SkFontConfigInterface::SetGlobal. > > This method is no longer used and is superseded by the 'smart' version. > > Change-Id: I491dda095224d443d184e8d73b36b1328227c99e > Reviewed-on: https://skia-review.googlesource.com/128312 > Reviewed-by: Herb Derby <herb@google.com> > Commit-Queue: Ben Wagner <bungeman@google.com> TBR=bungeman@google.com,herb@google.com Change-Id: Ie0fb3dc055d01cf7e3a4ec83fb92de33c07a7f58 No-Presubmit: true No-Tree-Checks: true No-Try: true Reviewed-on: https://skia-review.googlesource.com/128360 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Remove non-smart SkFontConfigInterface::SetGlobal.Gravatar Ben Wagner2018-05-15
| | | | | | | | | This method is no longer used and is superseded by the 'smart' version. Change-Id: I491dda095224d443d184e8d73b36b1328227c99e Reviewed-on: https://skia-review.googlesource.com/128312 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Reland "Driver bug workaround: disable_discard_framebuffer"Gravatar Adrienne Walker2018-05-15
| | | | | | | | | | | | | | | | | | | | | | | This is a reland of f31fece6581a46b40403fc78c83c7eebe50816ba Original change's description: > Driver bug workaround: disable_discard_framebuffer > > Bug: chromium: 829614 > Change-Id: I285b39b31a370247518e3a0b56ac4ea54f38c0c0 > Reviewed-on: https://skia-review.googlesource.com/126749 > Commit-Queue: Adrienne Walker <enne@chromium.org> > Commit-Queue: Brian Salomon <bsalomon@google.com> > Auto-Submit: Adrienne Walker <enne@chromium.org> > Reviewed-by: Brian Salomon <bsalomon@google.com> Bug: chromium: 829614 Change-Id: I6cc2de11a6315ff224c90551e8dd3e1d1dd4139a Reviewed-on: https://skia-review.googlesource.com/128108 Commit-Queue: Adrienne Walker <enne@chromium.org> Commit-Queue: Brian Salomon <bsalomon@google.com> Auto-Submit: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Reland "Driver bug workaround: disable_blend_equation_advanced"Gravatar Adrienne Walker2018-05-15
| | | | | | | | | | | | | | | | | | | | | This is a reland of f31fece6581a46b40403fc78c83c7eebe50816ba Original change's description: > Driver bug workaround: disable_blend_equation_advanced > > Bug: chromium: 829614 > Change-Id: If8eaec6d22412ec36aad8a143f84080be05f2926 > Reviewed-on: https://skia-review.googlesource.com/126748 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Adrienne Walker <enne@chromium.org> Bug: chromium: 829614 Change-Id: Idd36ff90a99336521ef5d47f0d7baf079c1bda09 Reviewed-on: https://skia-review.googlesource.com/128107 Commit-Queue: Adrienne Walker <enne@chromium.org> Commit-Queue: Brian Salomon <bsalomon@google.com> Auto-Submit: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Add preflight checks for SkImage deserializationGravatar Kevin Lubick2018-05-15
| | | | | | | | Bug: skia:7937 Change-Id: Ia6d8eeeeaf9ea38df7e4f78b23598a66142bf8de Reviewed-on: https://skia-review.googlesource.com/128301 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Kevin Lubick <kjlubick@google.com>
* Mark SkFontMgr_FCI methods as not implmented.Gravatar Ben Wagner2018-05-15
| | | | | | | | | | | | | | The SkFontMgr_FCI class is an attempt at transitioning off of SkFontConfigInterface to SkFontMgr. However, since SkFontMgr_FCI must wrap a SkFontConfigInterface it is limited in what parts of the SkFontMgr interface it can actually implement. This CL marks the unimplemented methods with SK_ABORT("Not implemented.") to make this explicit. Change-Id: I3ee1a0af549ac2257bc7098d6367db00a108e3ed Reviewed-on: https://skia-review.googlesource.com/128340 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* SkSharedMutex::acquire to check thread state.Gravatar Ben Wagner2018-05-15
| | | | | | | | | | This makes SkSharedMutex::acquire() assert if a thread has already acquired a shared lock. Change-Id: I35a186a137b9efcad1132093e1bb18c8822e1538 Reviewed-on: https://skia-review.googlesource.com/128160 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Herb Derby <herb@google.com>
* Reland "Add driver bug workarounds to GrCaps"Gravatar Adrienne Walker2018-05-14
| | | | | | | | | | | | | | | | | | | | | | | | This is a reland of 328490c6a1625ce51d0e81688e0c85c79c400d86 Original change's description: > Add driver bug workarounds to GrCaps > > This moves GrDriverBugWorkarounds to include so that it can be included > by GrCaps. This also makes GrContextOptions a nearly empty class in > the case of !SK_SUPPORT_GPU so that non-gpu builds don't need to build > in GrDriverBugWorkarounds.cpp. > > Bug: chromium: 829614 > Change-Id: Iedf73677fd09e9a487cfe618a696fd4b25c8703d > Reviewed-on: https://skia-review.googlesource.com/126581 > Reviewed-by: Brian Salomon <bsalomon@google.com> > Commit-Queue: Adrienne Walker <enne@chromium.org> Bug: chromium: 829614 Change-Id: I7b539f99caa3032c8c595dd5068dc3b179747ccd Reviewed-on: https://skia-review.googlesource.com/127304 Commit-Queue: Adrienne Walker <enne@chromium.org> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Make drawBitmap[Rect]() use GrTextureOpGravatar Brian Salomon2018-05-14
| | | | | | | | | Change-Id: If2a81bd0fdef9a91475828a6abf5c3d3ba456b5d Reviewed-on: https://skia-review.googlesource.com/128140 Commit-Queue: Brian Salomon <bsalomon@google.com> Commit-Queue: Robert Phillips <robertphillips@google.com> Auto-Submit: Brian Salomon <bsalomon@google.com> Reviewed-by: Robert Phillips <robertphillips@google.com>
* Centralize UTFN code point countingGravatar Herb Derby2018-05-14
| | | | | | | Change-Id: Ifd6bdcb4ac88452ab01124777168b140cae965a9 Reviewed-on: https://skia-review.googlesource.com/128014 Reviewed-by: Ben Wagner <bungeman@google.com> Commit-Queue: Herb Derby <herb@google.com>
* share impl for setlengthGravatar Mike Reed2018-05-14
| | | | | | | | Bug: skia: Change-Id: I7d137547674d1352f38935504fd6f75cc7d7286f Reviewed-on: https://skia-review.googlesource.com/128007 Reviewed-by: Jim Van Verth <jvanverth@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Clear temp buffer in GrContextPriv::readSurfacePixels2Gravatar Brian Salomon2018-05-14
| | | | | | | | | | This fixes an issue on Chrome's MSAN bots where glReadPixels into the temp buffer doesn't actually overwrite the buffer. Change-Id: I9cbdd208d3bdd0d53e96bbef1996648a3a21f66f Reviewed-on: https://skia-review.googlesource.com/128013 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com>
* Move SkFontConfigInterface to smart pointers.Gravatar Ben Wagner2018-05-14
| | | | | | | | | | This old interface may be easier to move away from if it isn't so difficult to understand. Change-Id: Ib04b00e55fd5c11aca8cc70bc6c7b0b5ba98dcae Reviewed-on: https://skia-review.googlesource.com/127969 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Avoid dividing by zero in SkTwoPointConicalGradient::CreateGravatar Yuqian Li2018-05-14
| | | | | | | | | Bug: oss-fuzz:6146 oss-fuzz:7474 Change-Id: I5f0488f4572140ccb7b9374bc9a66b8ae81dd2d4 Reviewed-on: https://skia-review.googlesource.com/127990 Reviewed-by: Mike Klein <mtklein@google.com> Commit-Queue: Mike Klein <mtklein@google.com> Auto-Submit: Yuqian Li <liyuqian@google.com>
* Revert "Revert "implement SkScalar versions in terms of float versions""Gravatar Mike Reed2018-05-14
| | | | | | | | | | This reverts commit 0e6db75eebab430e7f6665c8cfa1e7dcd2fef123. Bug: skia: Change-Id: I015d01efc58dfe03dae6bcc57c4b1102276e7566 Reviewed-on: https://skia-review.googlesource.com/127967 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Correctly handle empty outer blurs.Gravatar Ben Wagner2018-05-14
| | | | | | | | | | | Most blur styles approach the original mask as the sigma goes to zero. The outer style however approaches nothing as the mask sigma goes to zero. Handle this case correctly. Change-Id: I14f76e144d7cfc78aeaff30ff5444a21f1e5f98b Reviewed-on: https://skia-review.googlesource.com/128006 Commit-Queue: Ben Wagner <bungeman@google.com> Reviewed-by: Kevin Lubick <kjlubick@google.com>
* Merge duplicate umbra points in spot shadow.Gravatar Jim Van Verth2018-05-14
| | | | | | | | | | | | | | When we search for the closest umbra point at the end of the shadow creation process, we often find the umbra point we first added. Previously we would add this point again and patch up the result. This is causing issues with fixing the falloff, so this code handles this case better by reusing the original entry in fPositions. Bug: skia:6717 Change-Id: Ic44396f9430ecca8c67f06a6ffb37aae5a38c93b Reviewed-on: https://skia-review.googlesource.com/127964 Commit-Queue: Jim Van Verth <jvanverth@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com>
* Don't set luminance color if not used in MakeRecAndEffects.Gravatar Ben Wagner2018-05-14
| | | | | | | | | | Luminanace values should only be set if the luminance value will be used. This also moves the rest of SkScalerContext into SkScalerContext.cpp. Change-Id: I339ac5e6437cc7ee0d3aba81a1c1a77f5cb0b20b Reviewed-on: https://skia-review.googlesource.com/127742 Reviewed-by: Herb Derby <herb@google.com> Commit-Queue: Ben Wagner <bungeman@google.com>
* Minor refactoring to image filtersGravatar Robert Phillips2018-05-14
| | | | | | | | | | This pulls the boring parts out of: https://skia-review.googlesource.com/c/skia/+/127338 (Fix srcBounds computation in SkMatrixConvolutionImageFilter) TBR=bsalomon@google.com Change-Id: Iade788fcc96c4c16989d13e7592030a6a1d3f170 Reviewed-on: https://skia-review.googlesource.com/127573 Commit-Queue: Robert Phillips <robertphillips@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>
* detect overflow for morphologyGravatar Mike Reed2018-05-13
| | | | | | | | Bug: oss-fuzz:8236 Change-Id: Iae911d995cbfed77c5d332f615da1a8d9b487c21 Reviewed-on: https://skia-review.googlesource.com/127703 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Revert "Revert "reject large paths to avoid potential float overflows""Gravatar Mike Reed2018-05-11
| | | | | | | | | | | | | This reverts commit b8f0709aac43cfdefdbf3a307f8c2ecfc0c55d27. Attempted fix: update the iData before we return. Bug: oss-fuzz:8131 Change-Id: If60b8b45df4dcb1deecc18f58cb09644aaa3231d Reviewed-on: https://skia-review.googlesource.com/127501 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Don't limit glyph mask format for path effect.Gravatar Ben Wagner2018-05-11
| | | | | | | | | | | This removes code which sets the mask format of a scaler context to a8 in the presence of a path effect. This is overly limiting as both a1 and lcd16 are supported. Change-Id: I2a9ae88eac6a80ba1307dbac3d903041a9a93bf2 Reviewed-on: https://skia-review.googlesource.com/127398 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
* fixed incorrect index in SPIR-V matrix constructionGravatar Ethan Nicholas2018-05-11
| | | | | | | | Bug: skia:7908 Change-Id: I990e5f6e84afdc81d340f433d93a9061b9dd67ef Reviewed-on: https://skia-review.googlesource.com/127397 Reviewed-by: Chris Dalton <csmartdalton@google.com> Commit-Queue: Ethan Nicholas <ethannicholas@google.com>
* SkPDF: scale entire canvas for non-standard rasterDpiGravatar Hal Canary2018-05-11
| | | | | | | | | | | TODO: add better testing around this. BUG: chromium:481429 Change-Id: I1296fae3fc9775febf17bba75722c30f48d67a95 Reviewed-on: https://skia-review.googlesource.com/127051 Commit-Queue: Hal Canary <halcanary@google.com> Reviewed-by: Florin Malita <fmalita@chromium.org>
* Roll clang for Windows to chromium's current.Gravatar Ben Wagner2018-05-11
| | | | | | | | | | This is mostly to pick up new warnings before chromium complains about them. Change-Id: I69a0c3da63398f98d3f45b0993ed3325c0edae27 Reviewed-on: https://skia-review.googlesource.com/127395 Reviewed-by: Ben Wagner <benjaminwagner@google.com> Commit-Queue: Ben Wagner <benjaminwagner@google.com>
* Revert "reject large paths to avoid potential float overflows"Gravatar Mike Reed2018-05-11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | This reverts commit b35002d323134e2a441ce2f912a305cd9b3bd321. Reason for revert: crashing in threadedraster, may need to clean up the initonce payload if I early exit Original change's description: > reject large paths to avoid potential float overflows > > I think this change can catch a host of potential fuzzer issues up-front, > rather than adding finite tests in lots and lots of places down-stream. > > Bug: oss-fuzz:8131 > Change-Id: I421aa72c6ca3df57b40dd32b805d6c847d8e8d29 > Reviewed-on: https://skia-review.googlesource.com/127388 > Reviewed-by: Mike Reed <reed@google.com> > Commit-Queue: Mike Reed <reed@google.com> TBR=mtklein@google.com,jvanverth@google.com,bsalomon@google.com,caryclark@google.com,csmartdalton@google.com,fmalita@chromium.org,liyuqian@google.com,reed@google.com Change-Id: I12ff8664113ba5a36ee91cbe2000d7d445d4bc7e No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: oss-fuzz:8131 Reviewed-on: https://skia-review.googlesource.com/127580 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Avoid possible memory leak with inner blurs.Gravatar Ben Wagner2018-05-11
| | | | | | | | | | | | | | | If the inner blur dst is too big, SkBlurMask::BoxBlur can return without freeing the intermediate blur mask. Fix this by using SkAutoMaskFreeImage. Use SkAutoMaskFreeImage instead of custom SkAutoTCallVProc in SkBlurMask::BlurGroundTruth. Make SkAutoMaskFreeImage a special kind of std::unique_ptr. Change-Id: I93dc54265416ca69254633b00f14be75009d990f Reviewed-on: https://skia-review.googlesource.com/127402 Reviewed-by: Florin Malita <fmalita@chromium.org> Commit-Queue: Ben Wagner <bungeman@google.com>
* reject large paths to avoid potential float overflowsGravatar Mike Reed2018-05-11
| | | | | | | | | | | I think this change can catch a host of potential fuzzer issues up-front, rather than adding finite tests in lots and lots of places down-stream. Bug: oss-fuzz:8131 Change-Id: I421aa72c6ca3df57b40dd32b805d6c847d8e8d29 Reviewed-on: https://skia-review.googlesource.com/127388 Reviewed-by: Mike Reed <reed@google.com> Commit-Queue: Mike Reed <reed@google.com>
* Define ~GrContextThreadSafeProxy in GrContext.cppGravatar Brian Salomon2018-05-11
| | | | | | | | | | | | Otherwise GrCaps.h may be required in GrContext.h Change-Id: I67b2116b3bad2e7ebbb2157375c48023d2964f5c Reviewed-on: https://skia-review.googlesource.com/127394 Reviewed-by: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com> Commit-Queue: Brian Salomon <bsalomon@google.com> Commit-Queue: Greg Daniel <egdaniel@google.com> Auto-Submit: Brian Salomon <bsalomon@google.com>
* Shadow fixes to avoid popping.Gravatar Jim Van Verth2018-05-11
| | | | | | | | | | | * Make geometric shadow generation more tolerant of nearly-convex paths. * Ensure analytic and geometric shadow positions match with large blurs. Bug: skia: Change-Id: I8d3ba43b90d1520cb20f89de9f0b13d11a1a08c3 Reviewed-on: https://skia-review.googlesource.com/127045 Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Jim Van Verth <jvanverth@google.com>
* ccpr: Bugfix for cropped pathsGravatar Chris Dalton2018-05-11
| | | | | | | | | | | TBR=bsalomon@google.com Bug: skia:7948 Change-Id: I606bbad95260995dd3ea43c858591ae2d5c9cea1 Reviewed-on: https://skia-review.googlesource.com/127354 Reviewed-by: Chris Dalton <csmartdalton@google.com> Reviewed-by: Brian Salomon <bsalomon@google.com> Commit-Queue: Chris Dalton <csmartdalton@google.com>
* Make GrCaps and GrShaderCaps private.Gravatar Brian Salomon2018-05-11
| | | | | | | | | Moves getCaps() from GrContext to GrContextPriv and removes unused refCaps(). Change-Id: Ic6a8951b656c0d1b2773eae73bff8e88af819866 Reviewed-on: https://skia-review.googlesource.com/127389 Commit-Queue: Brian Salomon <bsalomon@google.com> Reviewed-by: Greg Daniel <egdaniel@google.com>